조각 내 격자보기에 표시된 이미지에서 onclick 이벤트가 발생하면 이미지 속성을 가져 오려고합니다. onItemClick 메서드에 전달 된 매개 변수에서 값을 가져 오려고합니다. 매개 변수에 액세스하려고하면 토스터에서 앱이 작동을 멈 춥니 다.GridView의 OnItemClickListener가 조각 내부에서 응답하지 않습니다.
토스터 안에 "test"라는 텍스트를 v.getId()/position/id로 바꿉니다. 그런 다음 앱이 중지됩니다.
다음은 코드입니다.
GridView gridView = (GridView) view.findViewById(R.id.imageGrid);
gridView.setAdapter(new ImageAdapter(this));
gridView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
Toast.makeText(getActivity(), "test" ,Toast.LENGTH_SHORT).show();
}});
다른 세부 정보를 제공해야합니까? 아니면 바보 같은 실수를하는거야?
업데이트 : 여기에 오류 로그를 추가하고 있습니다. 당신이 Toast
에 v.getId()/position/id
를 전달하면
09-28 16:03:53.327: W/dalvikvm(15316): threadid=1: thread exiting with uncaught exception (group=0x410f6300)
09-28 16:03:53.337: E/AndroidRuntime(15316): FATAL EXCEPTION: main
09-28 16:03:53.337: E/AndroidRuntime(15316): android.content.res.Resources$NotFoundException: String resource ID #0x10
09-28 16:03:53.337: E/AndroidRuntime(15316): at android.content.res.Resources.getText(Resources.java:229)
09-28 16:03:53.337: E/AndroidRuntime(15316): at android.widget.Toast.makeText(Toast.java:265)
09-28 16:03:53.337: E/AndroidRuntime(15316): at com.example.store.fragments.AllStoresFragment$1.onItemClick(AllStoresFragment.java:111)
09-28 16:03:53.337: E/AndroidRuntime(15316): at android.widget.AdapterView.performItemClick(AdapterView.java:298)
09-28 16:03:53.337: E/AndroidRuntime(15316): at android.widget.AbsListView.performItemClick(AbsListView.java:1086)
09-28 16:03:53.337: E/AndroidRuntime(15316): at android.widget.AbsListView$PerformClick.run(AbsListView.java:2855)
09-28 16:03:53.337: E/AndroidRuntime(15316): at android.widget.AbsListView$1.run(AbsListView.java:3529)
09-28 16:03:53.337: E/AndroidRuntime(15316): at android.os.Handler.handleCallback(Handler.java:615)
09-28 16:03:53.337: E/AndroidRuntime(15316): at android.os.Handler.dispatchMessage(Handler.java:92)
09-28 16:03:53.337: E/AndroidRuntime(15316): at android.os.Looper.loop(Looper.java:137)
09-28 16:03:53.337: E/AndroidRuntime(15316): at android.app.ActivityThread.main(ActivityThread.java:4745)
09-28 16:03:53.337: E/AndroidRuntime(15316): at java.lang.reflect.Method.invokeNative(Native Method)
09-28 16:03:53.337: E/AndroidRuntime(15316): at java.lang.reflect.Method.invoke(Method.java:511)
09-28 16:03:53.337: E/AndroidRuntime(15316): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
09-28 16:03:53.337: E/AndroidRuntime(15316): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
09-28 16:03:53.337: E/AndroidRuntime(15316): at dalvik.system.NativeStart.main(Native Method)
는 u는 오류를 발견 했습니까? 그런 다음 여기에 logcat 게시 – MAC