我不得不採取以下代碼來選擇按鈕點擊佈局。android:如何更改按鈕點擊佈局?
View.OnClickListener handler = new View.OnClickListener(){
public void onClick(View v) {
switch (v.getId()) {
case R.id.DownloadView:
// doStuff
setContentView(R.layout.main);
break;
case R.id.AppView:
// doStuff
setContentView(R.layout.app);
break;
}
}
};
findViewById(R.id.DownloadView).setOnClickListener(handler);
findViewById(R.id.AppView).setOnClickListener(handler);
當我點擊「AppView」按鈕時,佈局會改變,但是當我點擊「DownloadView」按鈕時,什麼都不會發生。
This link說我必須開始一個新的活動。
但我不知道如何使用代碼在那裏的意圖開始新的活動,將添加一個新的文件?
編輯: 我有我的新活動代碼:
package com.example.engagiasync;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.TextView;
public class AppView extends Activity implements OnClickListener{
@Override
public void onCreate(Bundle savedInstanceState){
setContentView(R.layout.app);
TextView tv = (TextView) this.findViewById(R.id.thetext);
tv.setText("App View yo!?\n");
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
}
}
,但它不工作,迫使其關閉時,logcat的說:
在兩個佈局中檢查您的按鈕ID .. – Sujit 2011-05-25 09:03:15
它是否在第一個佈局中的按鈕ID與第二個佈局相同時是probibited? – Kris 2011-05-25 09:14:42
不,只要它在每個佈局文件中只出現一次,那應該可以。 – Flo 2011-05-25 09:15:49