AndroidViews.java
创建这个Activity的最后一步是编辑AndroidViews.java。如果你想要从主AndroidViews Activity中调用testSpinner Activity,你必须给AndroidViews.java添加代码。比较一下下面的代码和你当前的AndroidViews.java。添加所需代码来完善你的文件。
package android_programmers_guide.AndroidViews;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.content.Intent;
public class AndroidViews extends Activity {
/** Called when the Activity is first created. */
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
super.onCreateOptionsMenu(menu);
menu.add(0, 0, "AutoComplete");
menu.add(0, 1, "Button");
menu.add(0, 2, "CheckBox");
menu.add(0, 3, "EditText");
menu.add(0, 4, "RadioGroup");
menu.add(0, 5, "Spinner");
return true;
}
@Override
public boolean onOptionsItemSelected(Menu.Item item){
switch (item.getId()) {
case 0:
showAutoComplete();
return true;
case 1:
showButton();
return true;
case 2:
showCheckBox();
return true;
case 3:
showEditText();
return true;
case 4:
showRadioGroup();
return true;
case 5:
showSpinner();
return true;
}
return true;
}
public void showButton() {
Intent showButton = new Intent(this, testButton.class);
startActivity(showButton);
}
public void showAutoComplete(){
Intent autocomplete = new Intent(this, AutoComplete.class);
startActivity(autocomplete);
}
public void showCheckBox(){
Intent checkbox = new Intent(this, testCheckBox.class);
startActivity(checkbox);
}
public void showEditText() {
Intent edittext = new Intent(this, testEditText.class);
startActivity(edittext);
}
public void showRadioGroup(){
Intent radiogroup = new Intent(this, testRadioGroup.class);
startActivity(radiogroup);
}
public void showSpinner(){
Intent spinner = new Intent(this, testSpinner.class);
startActivity(spinner);
}
}
启动你的应用,并从菜单中选择Snipper选项。
下面的插图显示了Snipper Activity的样子。
双击Set isEnabled 和Change Background Color按钮。结果就如下插图所示。
专家答疑
问:如果我在应用中使用多个视图,我可以仅仅使用import android.widget.*导入全部的widget?
答:可以。然而我会使用特定的调用。当我导入一个特殊包的完整的根目录时,你就将这个包的全部代码都添加到了你的Activity中。如果管理不善,就会延缓你的Activity。尝试导入所需要的包的部分,来减少Activity中的代码量。