AndroidDev 板


LINE

你的問題是在外面(紅色)跟onCreate裡面(綠色)各有一個myList myList是區域變數,這個函式結束以後就不能用了 你在onCreate裡面都用myList,結果之後在Toast的時候用的是myList當然是null 你Toast應該是放在onListItemClick吧?? 假如是在onCreate裡呼叫的話就會用到myList而不會有問題 改法就是從頭到尾都用全域變數,不要在onCreate裡面另外宣告一個區域變數 public class MainActivity extends ListActivity { private File file; private List<String> myList; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ArrayList<String> myList = new ArrayList<String>(); String root_sd = Environment.getExternalStorageDirectory().toString(); File file = new File( root_sd ) ; File list[] = file.listFiles(); for(int i=0 ;i<list.length;i++) { myList.add(list[i].getAbsolutePath()); } setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, myList )); } protected void onListItemClick(ListView l, View v, int position, long id) { super.onListItemClick(l, v, position, id); Toast.makeText(getApplicationContext(),position+"", Toast.LENGTH_LONG).show(); public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } } 在這上面的code中會出現陣列的順序如 0 1 2這樣 但是又嘗試了 Toast.makeText(getApplicationContext(),myList.get(position)+"", Toast.LENGTH_LONG).show(); 而出現了錯誤訊息 如下 08-25 09:24:49.432: E/AndroidRuntime(28120): FATAL EXCEPTION: main 08-25 09:24:49.432: E/AndroidRuntime(28120): java.lang.NullPointerException 08-25 09:24:49.432: E/AndroidRuntime(28120): at com.example.projectname.MainActivity.onListItemClick(MainActivity.java:48) 看到這行就夠了 煩請高手們幫解決 感恩不盡!!!! --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 210.61.163.55
※ 文章網址: http://webptt.com/m.aspx?n=bbs/AndroidDev/M.1408930345.A.9DE.html ※ 編輯: ms0561188 (210.61.163.55), 08/25/2014 09:33:52
1F:推 cooper6334: 都跟你說是NullPointerException了,去看看為啥那時候 08/25 10:37
2F:→ cooper6334: myList會是Null 08/25 10:37
3F:→ cooper6334: 啊!是因為你在onCreate另外開了一個myList所以外面的 08/25 10:38
4F:→ cooper6334: 根本沒動到 08/25 10:39
5F:推 laiair: 你的 ListView 在layout的id是list嗎? 08/25 11:14
6F:→ ms0561188: 不是 是直接繼承ListActivity 08/25 12:44
7F:推 BearrrXD: 試試看把getApplicationContext換成你的Activity.this 08/25 13:32
8F:→ ms0561188: 回樓上 一樣是出現錯誤 08/25 13:44
9F:→ ms0561188: C大 可是我可以接收到陣列的順序耶 08/25 13:47
10F:→ ms0561188: 卻為什麼沒辦法獲得顯示的文字 08/25 13:48
11F:→ ms0561188: 請問是我的語法有問題嗎? 08/25 13:48
--



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.163.58.205
※ 文章網址: http://webptt.com/m.aspx?n=bbs/AndroidDev/M.1408948585.A.B04.html ※ 編輯: cooper6334 (118.163.58.205), 08/25/2014 14:46:37
12F:推 ms0561188: 感謝!! 已獲得解答 謝謝高手!! 08/25 18:13







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Boy-Girl站內搜尋

TOP