Java 按下锁定按钮时返回标题栏
我有一个非常简单的2活动应用程序,标题屏幕和主游戏。我正在尝试这样做,当用户按下锁定按钮时,当他们解锁手机时,应用程序将重新出现在标题屏幕中。我遇到的问题是,有一半以上的时间,当我再次解锁手机时,我的标题屏幕活动出现异常。到目前为止,我知道这可能不是最好的方法,但我有点挣扎。以下是我在主要游戏活动中所做的Java 按下锁定按钮时返回标题栏,java,android,android-activity,Java,Android,Android Activity,我有一个非常简单的2活动应用程序,标题屏幕和主游戏。我正在尝试这样做,当用户按下锁定按钮时,当他们解锁手机时,应用程序将重新出现在标题屏幕中。我遇到的问题是,有一半以上的时间,当我再次解锁手机时,我的标题屏幕活动出现异常。到目前为止,我知道这可能不是最好的方法,但我有点挣扎。以下是我在主要游戏活动中所做的 // On pause, return to main title page @Override public void onPause() { super.onPause();
// On pause, return to main title page
@Override
public void onPause() {
super.onPause();
// Create intent to go back to the title menu
Intent intent = new Intent(this, ActivityTitle.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
}
下面是导致标题栏出现错误的原因
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_title_screen);
// Make sure that the volume buttons change the media volume in the app
setVolumeControlStream(AudioManager.STREAM_MUSIC);
radioGroupSound = (RadioGroup) findViewById(R.id.radioGroupSound);
radioGroupText = (RadioGroup) findViewById(R.id.radioGroupText);
// Make the start text blink
TextView myText = (TextView) findViewById(R.id.textViewStart );
Animation anim = new AlphaAnimation(0.0f, 1.0f);
anim.setDuration(500); //You can manage the time of the blink with this parameter
anim.setStartOffset(500);
anim.setRepeatMode(Animation.REVERSE);
anim.setRepeatCount(Animation.INFINITE);
myText.startAnimation(anim);
}
这是导致异常的最后一行-myText.startAnimation(anim)
这是错误日志
07-19 19:49:52.729 26036-26036/? E/AndroidRuntime: FATAL EXCEPTION: main
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.chrisbjohnson.colorbubbles/com.chrisbjohnson.colorbubbles.ActivityTitle}: java.lang.NullPointerException
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1664)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1680)
at android.app.ActivityThread.access$1500(ActivityThread.java:117)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:945)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3719)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:895)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:653)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
at com.chrisbjohnson.colorbubbles.ActivityTitle.onCreate(ActivityTitle.java:44)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1628)
如有任何想法,将不胜感激。要么用另一种方式处理,要么用另一种方式修复我正在做的事情
谢谢。花了这么多时间想弄明白,我意识到我只是在浪费时间。我只是通过让锁屏在我的应用程序中不工作来修复它。这是一种解决办法,但这是我能找到的最好的办法,而且不会浪费我几周的时间。最有可能的问题是
R.id.textViewStart
。它似乎未在活动\u title\u screen.xml
中定义。这就是为什么在myText.startAnimation(anim)上出现NullPointerException
代码>。我认为它比这要复杂一点。当我第一次启动应用程序时,文本视图工作正常。我只有在再次解锁手机时才会收到nullpointerexception。因此,我还有一条信息可能会有所帮助。在标题活动中调用onCreate时,布局资源文件似乎没有被正确调用。我知道这一点,因为任何GUI元素都会导致相同的nullpointerexception。有什么想法吗?