【发布时间】:2014-01-20 13:01:06
【问题描述】:
我在 android Pull to refresh listview 中工作。它工作正常,但在刷新 listview 时,我试图向下滚动列表。我收到此错误:
这是我的代码:
public void Callpagedetails() {
try
{
URL = http://history_thread.php?token_id=" + Token + "&p=" + page_count;
Log.d("TAG", "API URL IS " + URL);
HttpClient mHttpClient = new DefaultHttpClient();
HttpGet mGetMethod = new HttpGet(URL);
HttpResponse mReponseMessage = mHttpClient.execute(mGetMethod);
String Response = EntityUtils.toString(mReponseMessage.getEntity());
Log.d("TAG", "O/P Response is " + Response);
JSONArray responseObject = new JSONArray(Response);
for(int i=0; i < responseObject.length(); i++)
{
obj = responseObject.getJSONObject(i);
listhashmap = new HashMap<String, Object>();
listhashmap.put("text",obj.getString("text"));
here i am storing the item in arraylist arraylistitems
}
}
catch(Exception e)
{
System.out.println(e);
}
}
arraylistitems 是ArrayList<HashMap<String, Object>> arraylistitems;
Callpagedetails() 是我从中获取数据的方法
01-20 18:22:17.755: E/InputEventReceiver(23393): Exception dispatching input event.
01-20 18:22:17.755: E/MessageQueue-JNI(23393): Exception in MessageQueue callback: handleReceiveCallback
01-20 18:22:17.775: E/MessageQueue-JNI(23393): java.lang.IndexOutOfBoundsException: Invalid index 9, size is 1
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:251)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at java.util.ArrayList.get(ArrayList.java:304)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.widget.HeaderViewListAdapter.isEnabled(HeaderViewListAdapter.java:164)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.widget.AbsListView.onTouchEvent(AbsListView.java:3816)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at com.listview.HistoryListView.onTouchEvent(HistoryListView.java:316)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at com.listview.HistoryListView.onInterceptTouchEvent(HistoryListView.java:380)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1827)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2185)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1886)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2185)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1886)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2185)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1886)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2185)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1886)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2185)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1886)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2113)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1466)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.app.Activity.dispatchTouchEvent(Activity.java:2436)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2061)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.view.View.dispatchPointerEvent(View.java:7425)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.view.ViewRootImpl.deliverPointerEvent(ViewRootImpl.java:3376)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:3308)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:4402)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:4380)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:4484)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:171)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.os.MessageQueue.nativePollOnce(Native Method)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.os.MessageQueue.next(MessageQueue.java:125)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.os.Looper.loop(Looper.java:124)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at android.app.ActivityThread.main(ActivityThread.java:4918)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at java.lang.reflect.Method.invokeNative(Native Method)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at java.lang.reflect.Method.invoke(Method.java:511)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1004)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:771)
01-20 18:22:17.775: E/MessageQueue-JNI(23393): at dalvik.system.NativeStart.main(Native Method)
01-20 18:22:17.785: E/AndroidRuntime(23393): FATAL EXCEPTION: main
01-20 18:22:17.785: E/AndroidRuntime(23393): java.lang.IndexOutOfBoundsException: Invalid index 9, size is 1
01-20 18:22:17.785: E/AndroidRuntime(23393): at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:251)
01-20 18:22:17.785: E/AndroidRuntime(23393): at java.util.ArrayList.get(ArrayList.java:304)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.widget.HeaderViewListAdapter.isEnabled(HeaderViewListAdapter.java:164)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.widget.AbsListView.onTouchEvent(AbsListView.java:3816)
01-20 18:22:17.785: E/AndroidRuntime(23393): at com.listview.HistoryListView.onTouchEvent(HistoryListView.java:316)
01-20 18:22:17.785: E/AndroidRuntime(23393): at com.listview.HistoryListView.onInterceptTouchEvent(HistoryListView.java:380)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1827)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2185)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1886)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2185)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1886)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2185)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1886)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2185)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1886)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2185)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1886)
01-20 18:22:17.785: E/AndroidRuntime(23393): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2113)
01-20 18:22:17.785: E/AndroidRuntime(23393): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1466)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.app.Activity.dispatchTouchEvent(Activity.java:2436)
01-20 18:22:17.785: E/AndroidRuntime(23393): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2061)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.view.View.dispatchPointerEvent(View.java:7425)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.view.ViewRootImpl.deliverPointerEvent(ViewRootImpl.java:3376)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:3308)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:4402)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:4380)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:4484)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:171)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.os.MessageQueue.nativePollOnce(Native Method)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.os.MessageQueue.next(MessageQueue.java:125)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.os.Looper.loop(Looper.java:124)
01-20 18:22:17.785: E/AndroidRuntime(23393): at android.app.ActivityThread.main(ActivityThread.java:4918)
01-20 18:22:17.785: E/AndroidRuntime(23393): at java.lang.reflect.Method.invokeNative(Native Method)
01-20 18:22:17.785: E/AndroidRuntime(23393): at java.lang.reflect.Method.invoke(Method.java:511)
01-20 18:22:17.785: E/AndroidRuntime(23393): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1004)
01-20 18:22:17.785: E/AndroidRuntime(23393): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:771)
01-20 18:22:17.785: E/AndroidRuntime(23393): at dalvik.system.NativeStart.main(Native Method)
谁能帮帮我。谢谢。
【问题讨论】:
-
没有代码我们如何提供帮助?????
-
请贴刷新方法代码
-
向下滚动时检查是否更换了适配器。
-
你什么时候调用 RefreshTask.execute()?
-
你应该确保添加适配器扩展的所有代码,这是它失败的关键。
标签: android android-listview pull-to-refresh