0

我的 Activity 启动模型:singleTop

在 onCreate 中:

mTabIcon = findViewById(R.id.m_tab_icon);

在 onNewIntent 中:

mTabIcon.setSelected(true);

但发生NullPointerException

Caused by java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.ImageView.setSelected(boolean)' on a null object reference
com.myActivity.onNewIntent
android.app.Instrumentation.callActivityOnNewIntent (Instrumentation.java:1229)
android.app.Instrumentation.callActivityOnNewIntent (Instrumentation.java:1241)
android.app.ActivityThread.deliverNewIntents (ActivityThread.java:2648)
android.app.ActivityThread.performResumeActivity (ActivityThread.java:3189)
android.app.ActivityThread.handleResumeActivity (ActivityThread.java:3242)
android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:2584)
android.app.ActivityThread.access$800 (ActivityThread.java:176)
android.app.ActivityThread$H.handleMessage (ActivityThread.java:1452)
android.os.Handler.dispatchMessage (Handler.java:111)
android.os.Looper.loop (Looper.java:192)
android.app.ActivityThread.main (ActivityThread.java:5619)
java.lang.reflect.Method.invoke (Method.java)
java.lang.reflect.Method.invoke (Method.java:372)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:976)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:771)

有人可以给我一些想法来解决这个问题吗?代码类似:

    private ImageView mTabIcon;

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mTabIcon = findViewById(R.id.m_tab_icon);
    }

    @Override
    protected void onNewIntent(Intent intent) {
        super.onNewIntent(intent);
        mTabIcon.setSelected(true);
    }
4

0 回答 0