所以我有一個約10行數據的ListView。它呈現很好,但是當我嘗試做一個mListView.getChildAt(index);調用,如果下面的結果包含從頂端開始的第5行,則結果視圖爲NULL。ListView空指針異常當訪問行「降低」列表
這裏是我打這個電話,一個logcat的,並真誠感謝你在前進:
View r = manageTransfersList.getChildAt(mTaskIndex);
其中mTaskIndex
從
public void onListItemClick(ListView l, View v, int position, long id) {
...
mTaskIndex = position;
...
}
logcat的傳遞:
08-07 09:15:12.420: E/AndroidRuntime(7657): FATAL EXCEPTION: main
08-07 09:15:12.420: E/AndroidRuntime(7657): java.lang.NullPointerException
08-07 09:15:12.420: E/AndroidRuntime(7657): at org.globus.globus.transfer.ManageTransfersFragment$TaskDetailsDialogFragment$1.onClick(ManageTransfersFragment.java:469)
08-07 09:15:12.420: E/AndroidRuntime(7657): at android.view.View.performClick(View.java:4084)
08-07 09:15:12.420: E/AndroidRuntime(7657): at android.view.View$PerformClick.run(View.java:16966)
08-07 09:15:12.420: E/AndroidRuntime(7657): at android.os.Handler.handleCallback(Handler.java:615)
08-07 09:15:12.420: E/AndroidRuntime(7657): at android.os.Handler.dispatchMessage(Handler.java:92)
08-07 09:15:12.420: E/AndroidRuntime(7657): at android.os.Looper.loop(Looper.java:137)
08-07 09:15:12.420: E/AndroidRuntime(7657): at android.app.ActivityThread.main(ActivityThread.java:4896)
08-07 09:15:12.420: E/AndroidRuntime(7657): at java.lang.reflect.Method.invokeNative(Native Method)
08-07 09:15:12.420: E/AndroidRuntime(7657): at java.lang.reflect.Method.invoke(Method.java:511)
08-07 09:15:12.420: E/AndroidRuntime(7657): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:788)
08-07 09:15:12.420: E/AndroidRuntime(7657): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:555)
08-07 09:15:12.420: E/AndroidRuntime(7657): at dalvik.system.NativeStart.main(Native Method)
所以你從onListItemClick()內調用getChildAt()? – 2012-08-07 14:35:18
是使用Listview還是ExpandableListview? – 2012-08-07 14:41:02
不是'v'你正在尋找的'View'?否則,也許你沒有在正確的地方使用它。我一直在玩ListViews,當它不容易,然後有另一種方式來做你想要的。問你想用你的ListView做什麼! – Vince 2012-08-07 14:42:46