[問題] Fragment onClick問題

看板AndroidDev作者 (黃)時間9年前 (2016/05/06 19:40), 9年前編輯推噓0(003)
留言3則, 1人參與, 最新討論串1/1
最近寫了一個Gallery 做法是另外寫個GalleryAdapter把photo_view(個別放網路上讀到的圖)這個layout讀進 主要的layout(佈局是用GridView)中 並在photo_view中有把imageview設onclick 讓使用者按每張圖片都可以直接觸發事件 但後來因為整體需求把程式改用fragment寫 才發現fragment不允許從xml檔直接onclick 在網路上找了有兩個主要的方法 1. 是讓fragment實作OnClickListener 然後@Override onClick 但試過後按圖片完全沒反應(連onClick都沒進去) 2. 另一個方法是一樣在xml中設定android:onClick="myClickMethod" 然後用Activity來接 Activity中裡: Fragment someFragment; public void myClickMethod(View v) { someFragment.myClickMethod(v); } 但試過後都會發生錯誤java.lang.NullPointerException 希望大家看得懂QQ 請問有大大知道該怎麼做嗎 感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.168.42.10 ※ 文章網址: https://www.ptt.cc/bbs/AndroidDev/M.1462534842.A.59E.html ※ 編輯: fit1122 (114.42.115.220), 05/06/2016 20:07:58

05/06 20:20, , 1F
1. 確認你imageview是否有setOnClickListener
05/06 20:20, 1F

05/06 20:22, , 2F
2. 如果是照你說到寫法,你的someFragment沒有instance
05/06 20:22, 2F

05/06 20:22, , 3F
當然會出現NPE
05/06 20:22, 3F
感謝大大指引!! 我本來以為用 Myfragment somefragment = new Myfragment(); 的方式就可以 剛在這邊找到 https://github.com/codepath/android_guides/wiki/Creating-and-Using-Fragments 要用 Myfragment somefragment = (Myfragment) getSupportFragmentManager().findFragmentByTag("MyTag"); 這樣就成功了 ※ 編輯: fit1122 (114.42.115.220), 05/06/2016 21:22:44
文章代碼(AID): #1NB8AwMU (AndroidDev)