![](/img/trans.png)
[英]App Crashes: Android Studio: Switching Activities Using If Statements (INTENT)
[英]Android Intent Switching Crashes onClick
我對此很困惑。 在我的MainActivity.java中,我有一個按鈕,該按鈕應該轉到另一個文件RedGreenTest.java
另一個類。
redButton.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
findViewById(R.id.testRG_button);
Intent i = new Intent(MainActivity.this, RedGreenTest.class);
startActivity(i);
}
});
因此,該按鈕被單擊,並且bam insta-crash。 調試器告訴我,它是startActivity(i);
不對。 進入清單,我將我的<activity android:name=".MainActivity">
更改為<activity android:name=".RedGreenTest">
,該應用程序就可以正常啟動了。
這是MainActivity.java
文件中onCreate()類的開頭:
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.test_select_layout);
...
還有我的RedGreenTest.java
onCreate():
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.red_green_layout);
...
通過調試器運行它,在清單中設置RedGreenTest.java
文件時,我沒有收到任何錯誤。
從這個應該簡單的意圖切換中我到底缺少什么基礎?
您需要將兩個活動都添加到清單中:
<activity android:name=".RedGreenTest">
...
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
當您將MainActivity更改為RedGreenTest時,應用程序啟動的原因是,您將RedGreenTest活動設置為啟動活動,該活動由意圖過濾器設置。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.