Exception dispatching input event. use XlistView

今天上午解决的Bug,一上午的时间;

log:

11-01 14:49:14.826: E/InputEventReceiver(30810): Exception dispatching input event.
11-01 14:49:14.850: E/AndroidRuntime(30810): FATAL EXCEPTION: main
11-01 14:49:14.850: E/AndroidRuntime(30810): java.lang.NullPointerException
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.widget.AbsListView.obtainView(AbsListView.java:2348)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.widget.ListView.makeAndAddView(ListView.java:1845)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.widget.ListView.fillDown(ListView.java:678)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.widget.ListView.fillGap(ListView.java:642)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.widget.AbsListView.trackMotionScroll(AbsListView.java:5602)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.widget.AbsListView.scrollIfNeeded(AbsListView.java:3346)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.widget.AbsListView.onTouchEvent(AbsListView.java:3699)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at com.hades.newstyle.customviews.XListView.onTouchEvent(XListView.java:369)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.View.dispatchTouchEvent(View.java:7347)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2352)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2049)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at com.hades.newstyle.customviews.XListView.dispatchTouchEvent(XListView.java:303)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2358)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2063)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2358)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2063)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2358)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2063)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2358)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2063)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2358)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2063)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2358)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2063)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2358)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2063)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2064)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1513)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.app.Activity.dispatchTouchEvent(Activity.java:2510)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2012)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.View.dispatchPointerEvent(View.java:7527)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewRootImpl.deliverPointerEvent(ViewRootImpl.java:3682)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:3610)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:4862)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:4822)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:4974)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:179)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.InputEventReceiver.nativeConsumeBatchedInputEvents(Native Method)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.InputEventReceiver.consumeBatchedInputEvents(InputEventReceiver.java:171)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewRootImpl.doConsumeBatchedInput(ViewRootImpl.java:4942)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.ViewRootImpl$ConsumeBatchedInputRunnable.run(ViewRootImpl.java:4996)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.Choreographer$CallbackRecord.run(Choreographer.java:776)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.Choreographer.doCallbacks(Choreographer.java:579)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.Choreographer.doFrame(Choreographer.java:546)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:762)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.os.Handler.handleCallback(Handler.java:725)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.os.Handler.dispatchMessage(Handler.java:92)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.os.Looper.loop(Looper.java:153)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at android.app.ActivityThread.main(ActivityThread.java:5326)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at java.lang.reflect.Method.invokeNative(Native Method)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at java.lang.reflect.Method.invoke(Method.java:511)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:848)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:615)
11-01 14:49:14.850: E/AndroidRuntime(30810): 	at dalvik.system.NativeStart.main(Native Method)

跑的时候。APP一 滑动 就自动崩掉。

开始的时候:

一直以为是事件分发的问题,Debug  了 好久也没有找到Exception dispatching input event. 中的 java.lang.NullPointerException,在哪里!  找了一上午 也没有头绪。

之后检查,ListView 适配器中的GetView() 方法的时候,发现,convertView

没有给view 赋值,而且返回的是 view.

解决方案:

View view = convertView;

Code:

@Override
	public View getView(int position, View convertView, ViewGroup parent) {
		// TODO 需要处理新款详情的 ListView布局

		Log.i("love", "---getCount()  size="+this.getCount());

		//
		View view = convertView;

		if(view == null)
		{
			view = inflater.inflate(R.layout.fragment_new_fashtion_list_item, parent, false);
		}

		if(view != null)
		{
			ViewHolder holder = (ViewHolder)view.getTag();

			if(holder == null)
			{
				holder = new ViewHolder();

				holder.newImageView = (ImageView) view.findViewById(R.id.new_fashtion_item_image);
				holder.newTitleView = (TextView) view.findViewById(R.id.new_fashtion_item_title);
				holder.newShareBtn = (RadioButton) view.findViewById(R.id.new_fashtion_share_btn);
				holder.newCollectionBtn = (RadioButton) view.findViewById(R.id.new_fashtion_collection_btn);
				holder.newPriceBtn = (RadioButton) view.findViewById(R.id.new_fashtion_price_btn);

				view.setTag(holder);
			}

			// 获取当前的数据实体。
			NewStyleItemEntity entity = (NewStyleItemEntity)newStyleLists.get(position);

			Log.i("love", "---position="+position);
			Log.i("love", "---entity= "+newStyleLists.get(position).getPrice());

			holder.newTitleView.setText(newStyleLists.get(position).getTitle());
			holder.newPriceBtn.append(newStyleLists.get(position).getPrice());

			//图片的下载:

		}

		return view;
	}
时间: 2024-08-05 00:32:57

Exception dispatching input event. use XlistView的相关文章

Android App层通过JNI从驱动获取Input Event

1 概述 尝试在App层直接读取驱动的Input Event,获取触屏事件(本文获取的是电磁笔触屏事件),而不通过Android的Input Framework. 2 架构 3 实现 3.1 JNI层 共有以下几个文件: 3.1.1 input_pen.h 首先看input_pen.h #ifndef _INPUT_PEN_H #define _INPUT_PEN_H #include <pthread.h> #include <linux/input.h> #include &l

Android 中input event的分析

文章将分析Android 的Input Event 子系统的来龙去脉. Android 系统里面有很多小工具,运行这些工具,我们对它们有一个感性的认识,进而阅读和分析这些小工具源代码,再顺藤摸瓜,就可以把整个子系统的来龙去脉弄清楚. 1.运行toolbox的getevent 工具. # getevent -helpgetevent -helpUsage: getevent [-t] [-n] [-s switchmask] [-S] [-v [mask]] [-p] [-q] [-c count

linux下input event事件,可以用后台截取键盘按下的键值,后台截取数据.....input.h

如何读取Linux键值,输入子系统,key,dev/input/event,dev/event,C语言键盘? 这里先上一段代码,自己拿到linux系统运行就可以,注意代码中keys_fd = open("/dev/input/event2", O_RDONLY);      这里去你的/dev/input/event2的event事件,去查看你的键盘事件是那一个,如果是event3那么你改成event3好了.这里给一个命令你去查看 cat  /proc/bus/usb/devices

Robot: 一个记录和回放Android input event(touch)的工具

这个工具的主要目的就是记录屏幕上的各种操作,然后多次回放,用于稳定性测试和一些需要多次重复才能复现的bug的重现. 代码在以下位置: http://download.csdn.net/detail/dfysy/8479123 之前,别人转发我一个记录/回放 event的程序,在KK以前都是可以用的,但是由于Android L enable了PIE(positionindependent execution), 在L上没法用了.又没有源码,只能自己再写一个. 程序的原理: 就是读取/dev/inp

Android Sudoku应用挂掉的问题

在真机上测试数独游戏时发现,快速点击屏幕时,游戏偶尔出现挂死的情况,Log如下 04-08 15:35:00.838 7317-7356/org.elvalad.sudoku D/OpenGLRenderer﹕ Enabling debug mode 0 04-08 15:35:23.036 7317-7317/org.elvalad.sudoku E/InputEventReceiver﹕ Exception dispatching input event. 04-08 15:35:23.03

关于TouchEvent中出现异常:MessageQueue-JNI问题

Tag:MessageQueue-JNI Exception dispatching input event. Exception in MessageQueue callback: handleReceiveCallback java.lang.NullPointerException 原因是我在TouchEvent事件中调用了一个方法,而在这个方法中调用的类使用了静态变量和静态方法以及单例模式,所以需要在使用时调用方法获取该类的实例,而我没有获取实例导致的空指针异常. 关于TouchEven

android开发中遇到的问题汇总【四】

92. Looks like there is no way to avoid modifications made by the import plugin. All the settings it has is three checkboxes related to dependency management. I tried to uncheck all of them but still it does change my project structure. I managed to

点击ListView闪退

============问题描述============ 一点击ListVIew就闪退,调试了两天了,好痛苦,望大家解救. 这是部分日志 02-06 10:58:39.207: E/InputEventReceiver(764): Exception dispatching input event. 02-06 10:58:39.207: E/MessageQueue-JNI(764): Exception in MessageQueue callback:handleReceiveCallba

BaseAdapter的ArrayIndexOutOfBoundsException

最近写一个listView中多个listItem布局时,convertView缓存及使用,类似微信的聊天界面的listView,报了一个异常: 11-25 15:51:49.076: E/InputEventReceiver(22971): Exception dispatching input event.11-25 15:51:49.128: E/AndroidRuntime(22971): FATAL EXCEPTION: main11-25 15:51:49.128: E/Android