何が起こっているのかわかりませんが、例外が発生してアプリがフリーズします。
主な活動:
public class MainAcitivty extends FragmentActivity implements OnClickListener
{
// ...
public interface OnItemSelectedListener
{
public void onItemSelected(int resourceId);
}
OnItemSelectedListener mCallback;
@Override
public void onClick(View v)
{
if (v.getId() == R.id.my_imageView)
{
mCallback.onItemSelected(R.id.my_imageView);
}
}
}
断片:
public MyFragment extends Fragment implements MainAcitivty.OnItemSelectedListener
{
@Override
public void onItemSelected(int resourceId)
{
Log.i("INFO", "Selected: " + resourceId);
}
}
選択したボタンをクリックすると、アプリがフリーズし、次の例外がスローされます。
E/AndroidRuntime(21649): 致命的な例外: メイン
E/AndroidRuntime(21649): java.lang.NullPointerException
E/AndroidRuntime (21649): com.example.MainActivity.onClick (MainActivity.java:53) で
E/AndroidRuntime(21649): android.view.View.performClick(View.java:4232) で
E/AndroidRuntime(21649): android.view.View$PerformClick.run(View.java:17298) で
E/AndroidRuntime(21649): android.os.Handler.handleCallback(Handler.java:615) で
E/AndroidRuntime(21649): android.os.Handler.dispatchMessage(Handler.java:92) で
E/AndroidRuntime(21649): android.os.Looper.loop(Looper.java:137)
E/AndroidRuntime(21649): android.app.ActivityThread.main(ActivityThread.java:4921) で
E/AndroidRuntime(21649): java.lang.reflect.Method.invokeNative(ネイティブ メソッド) で
E/AndroidRuntime(21649): java.lang.reflect.Method.invoke(Method.java:511) で
E/AndroidRuntime (21649): com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1027) で
E/AndroidRuntime (21649): com.android.internal.os.ZygoteInit.main (ZygoteInit.java:794) で
E/AndroidRuntime(21649): dalvik.system.NativeStart.main(ネイティブメソッド)