【Android 开发教程】Button,ImageButton,EditText,ChcekBox,ToggleButton,RadioButton

本章节翻译自《Beginning-Android-4-Application-Development》,如有翻译不当的地方,敬请指出。

原书购买地址http://www.amazon.com/Beginning-Android-4-Application-Development/dp/1118199545/


除了最常用的TextView,Android还提供了一些其他的基本控件。

  • Button
  • ImageButton
  • EditText
  • CheckBox
  • RadioGroup和RadioButton
  • ToggleButton

下面的例子,展示如何使用这些基本控件。

1. 创建一个工程:BasicViews。

2. main.xml中的代码。

[html] view plain copy
  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
  3. android:layout_width="fill_parent"
  4. android:layout_height="fill_parent"
  5. android:orientation="vertical">
  6. <Buttonandroid:id="@+id/btnSave"
  7. android:layout_width="fill_parent"
  8. android:layout_height="wrap_content"
  9. android:text="@string/save"
  10. android:onClick="btnSaved_clicked"/>
  11. <Buttonandroid:id="@+id/btnOpen"
  12. android:layout_width="wrap_content"
  13. android:layout_height="wrap_content"
  14. android:text="Open"/>
  15. <ImageButtonandroid:id="@+id/btnImg1"
  16. android:layout_width="fill_parent"
  17. android:layout_height="wrap_content"
  18. android:src="@drawable/ic_launcher"/>
  19. <EditTextandroid:id="@+id/txtName"
  20. android:layout_width="fill_parent"
  21. android:layout_height="wrap_content"/>
  22. <CheckBoxandroid:id="@+id/chkAutosave"
  23. android:layout_width="fill_parent"
  24. android:layout_height="wrap_content"
  25. android:text="Autosave"/>
  26. <CheckBoxandroid:id="@+id/star"
  27. style="?android:attr/starStyle"
  28. android:layout_width="wrap_content"
  29. android:layout_height="wrap_content"/>
  30. <RadioGroupandroid:id="@+id/rdbGp1"
  31. android:layout_width="fill_parent"
  32. android:layout_height="wrap_content"
  33. android:orientation="vertical">
  34. <RadioButtonandroid:id="@+id/rdb1"
  35. android:layout_width="fill_parent"
  36. android:layout_height="wrap_content"
  37. android:text="Option1"/>
  38. <RadioButtonandroid:id="@+id/rdb2"
  39. android:layout_width="fill_parent"
  40. android:layout_height="wrap_content"
  41. android:text="Option2"/>
  42. </RadioGroup>
  43. <ToggleButtonandroid:id="@+id/toggle1"
  44. android:layout_width="wrap_content"
  45. android:layout_height="wrap_content"/>
  46. </LinearLayout>
3. F11调试。

【Android 开发教程】Button,ImageButton,EditText,ChcekBox,ToggleButton,RadioButton

4. 点击不同的控件,观察不同的效果。

【Android 开发教程】Button,ImageButton,EditText,ChcekBox,ToggleButton,RadioButton

5. 对事件进行处理。

[java] view plain copy
  1. publicclassBasicViews1ActivityextendsActivity{
  2. publicvoidbtnSaved_clicked(Viewview){
  3. DisplayToast("YouhaveclickedtheSavebutton1");
  4. }
  5. /**Calledwhentheactivityisfirstcreated.*/
  6. @Override
  7. publicvoidonCreate(BundlesavedInstanceState){
  8. super.onCreate(savedInstanceState);
  9. setContentView(R.layout.main);
  10. //---Buttonview---
  11. ButtonbtnOpen=(Button)findViewById(R.id.btnOpen);
  12. btnOpen.setOnClickListener(newView.OnClickListener(){
  13. publicvoidonClick(Viewv){
  14. DisplayToast("YouhaveclickedtheOpenbutton");
  15. }
  16. });
  17. /*
  18. //---Buttonview---
  19. ButtonbtnSave=(Button)findViewById(R.id.btnSave);
  20. btnSave.setOnClickListener(newView.OnClickListener()
  21. {
  22. publicvoidonClick(Viewv){
  23. DisplayToast("YouhaveclickedtheSavebutton");
  24. }
  25. });
  26. */
  27. //---CheckBox---
  28. CheckBoxcheckBox=(CheckBox)findViewById(R.id.chkAutosave);
  29. checkBox.setOnClickListener(newView.OnClickListener()
  30. {
  31. publicvoidonClick(Viewv){
  32. if(((CheckBox)v).isChecked())
  33. DisplayToast("CheckBoxischecked");
  34. else
  35. DisplayToast("CheckBoxisunchecked");
  36. }
  37. });
  38. //---RadioButton---
  39. RadioGroupradioGroup=(RadioGroup)findViewById(R.id.rdbGp1);
  40. radioGroup.setOnCheckedChangeListener(newOnCheckedChangeListener()
  41. {
  42. publicvoidonCheckedChanged(RadioGroupgroup,intcheckedId){
  43. RadioButtonrb1=(RadioButton)findViewById(R.id.rdb1);
  44. if(rb1.isChecked()){
  45. DisplayToast("Option1checked!");
  46. }else{
  47. DisplayToast("Option2checked!");
  48. }
  49. }
  50. });
  51. //---ToggleButton---
  52. ToggleButtontoggleButton=
  53. (ToggleButton)findViewById(R.id.toggle1);
  54. toggleButton.setOnClickListener(newView.OnClickListener()
  55. {
  56. publicvoidonClick(Viewv){
  57. if(((ToggleButton)v).isChecked())
  58. DisplayToast("TogglebuttonisOn");
  59. else
  60. DisplayToast("TogglebuttonisOff");
  61. }
  62. });
  63. }
  64. privatevoidDisplayToast(Stringmsg)
  65. {
  66. Toast.makeText(getBaseContext(),msg,
  67. Toast.LENGTH_SHORT).show();
  68. }
  69. }

你可能感兴趣的:(RadioButton)