1
我在使用Android應用中的按鈕切換視圖時遇到問題。該代碼在Eclipse中沒有顯示任何錯誤,但是當單擊該按鈕時,應用程序意外退出仿真器。我的代碼如下。謝謝使用按鈕切換Android SDK的視圖
public class Main extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button go = (Button)findViewById(R.id.goButton);
go.setOnClickListener(mGoListener);
}
private OnClickListener mGoListener = new OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setClassName("android.taboo.Activities", "android.taboo.Activities.MainMenu");
startActivity(intent);
}
};
}
public class MainMenu extends Activity{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.mainmenu);
TextView quickStart = (TextView)findViewById(R.id.quickStart);
quickStart.setOnClickListener(mQuickStartListener);
TextView gameSetup = (TextView)findViewById(R.id.gameSetup);
gameSetup.setOnClickListener(mGameSetupListener);
TextView settings = (TextView)findViewById(R.id.settings);
settings.setOnClickListener(mSettingsListener);
TextView wordEntry = (TextView)findViewById(R.id.wordEntry);
wordEntry.setOnClickListener(mWordEntryListener);
}
//Listeners for MainMenu navigation buttons
private OnClickListener mQuickStartListener = new OnClickListener() {
public void onClick(View v) {
setContentView(R.layout.quickstart);
}
};
private OnClickListener mGameSetupListener = new OnClickListener() {
public void onClick(View v) {
setContentView(R.layout.gamesetup);
}
};
private OnClickListener mSettingsListener = new OnClickListener() {
public void onClick(View v) {
setContentView(R.layout.settings);
}
};
private OnClickListener mWordEntryListener = new OnClickListener() {
public void onClick(View v) {
setContentView(R.layout.word);
}
};
}
startActivityForResult以何種方式引用要加載的新活動?在這裏,你只是通過它的意圖,而不是一個新的活動 – meburbo 2010-11-15 19:04:08
我不完全確定。但是,這種方法適用於我和其他一些我已經幫助和合作的人。試試看,讓我知道它是否適合你。 – prolink007 2010-11-15 19:07:20
好的,所以意圖中的上下文並聲明視圖(在這種情況下的按鈕)最終修復它。另外我忘了在AndroidManifest中聲明第二個Activity。仍然不完全理解視圖需要被宣佈爲最終的原因。謝謝您的幫助! – meburbo 2010-11-15 19:43:24