12-12 16:43:16.876: E/AndroidRuntime(7395): FATAL EXCEPTION: main
12-12 16:43:16.876: E/AndroidRuntime(7395): java.lang.IndexOutOfBoundsException: Invalid index 10, size is 10
12-12 16:43:16.876: E/AndroidRuntime(7395): at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:251)
12-12 16:43:16.876: E/AndroidRuntime(7395): at java.util.ArrayList.get(ArrayList.java:304)
12-12 16:43:16.876: E/AndroidRuntime(7395): at com.travelsky.moa.contacts.ContactsActivity$ContactListOnItemClickListener.onItemClick(ContactsActivity.java:406)
12-12 16:43:16.876: E/AndroidRuntime(7395): at android.widget.AdapterView.performItemClick(AdapterView.java:298)
12-12 16:43:16.876: E/AndroidRuntime(7395): at android.widget.AbsListView.performItemClick(AbsListView.java:1100)
12-12 16:43:16.876: E/AndroidRuntime(7395): at android.widget.AbsListView$PerformClick.run(AbsListView.java:2888)
12-12 16:43:16.876: E/AndroidRuntime(7395): at android.widget.AbsListView$1.run(AbsListView.java:3567)
12-12 16:43:16.876: E/AndroidRuntime(7395): at android.os.Handler.handleCallback(Handler.java:615)
12-12 16:43:16.876: E/AndroidRuntime(7395): at android.os.Handler.dispatchMessage(Handler.java:92)
12-12 16:43:16.876: E/AndroidRuntime(7395): at android.os.Looper.loop(Looper.java:137)
12-12 16:43:16.876: E/AndroidRuntime(7395): at android.app.ActivityThread.main(ActivityThread.java:4790)
12-12 16:43:16.876: E/AndroidRuntime(7395): at java.lang.reflect.Method.invokeNative(Native Method)
12-12 16:43:16.876: E/AndroidRuntime(7395): at java.lang.reflect.Method.invoke(Method.java:511)
12-12 16:43:16.876: E/AndroidRuntime(7395): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789)
12-12 16:43:16.876: E/AndroidRuntime(7395): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556)
12-12 16:43:16.876: E/AndroidRuntime(7395): at dalvik.system.NativeStart.main(Native Method)
不解,我在想是否因為我在刷新這個list的瞬間報出來的
后來加入了判斷list的代碼
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { //modify by tzb at 2012-12-12 17:24:37 start if (null != mContactList && mContactList.size() > 0 && arg2 - 1 < mContactList.size()) { startActivityToContactDetaile(mContactList.get(arg2 - 1)); } //modify by tzb at 2012-12-12 17:24:37 end }
應該是headerview及footerview的問題
REFERENCES:http://blog.csdn.net/gg137608987/article/details/7995671