歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Android開發之《Android應用開發揭秘》UI事件匯總

繼續Android開發的征程。

以下是Android應用開發揭秘這本書第四章的關於UI的事件處理的總結。基本上都是可以復用的代碼。存著日後方便。

1.EditView控件的setOnKeyListener方法。點擊上下左右鍵或者中間鍵的時候可以出發該方法。代碼如下。

  1.      myEditView.setOnKeyListener(new EditText.OnKeyListener(){  
  2.   
  3. @Override  
  4. public boolean onKey(View v, int keyCode, KeyEvent event) {  
  5.         myTextView.setText("文本框中內容是:"+myEditView.getText().toString());  
  6.         return false;// TODO Auto-generated method stub   
  7. }  
  8.      });  
 
  1.      myEditView.setOnKeyListener(new EditText.OnKeyListener(){  
  2.   
  3. @Override  
  4. public boolean onKey(View v, int keyCode, KeyEvent event) {  
  5.         myTextView.setText("文本框中內容是:"+myEditView.getText().toString());  
  6.         return false;// TODO Auto-generated method stub   
  7. }  
  8.      });  

2.RadioButton控件和RadioGroup控件的組合使用,代碼如下:

  1.      myRadioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {  
  2.   
  3. @Override  
  4. public void onCheckedChanged(RadioGroup group, int checkedId) {  
  5.     // TODO Auto-generated method stub   
  6.     if(checkedId == myRadioButton3.getId())  
  7.     {  
  8.         DisplayToast("正確答案:"+myRadioButton3.getText()+"恭喜你回答正確");  
  9.     }  
  10.     else  
  11.     {  
  12.         DisplayToast("回答錯誤");  
  13.     }  
  14. }  
  15. );  
 
  1.      myRadioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {  
  2.   
  3. @Override  
  4. public void onCheckedChanged(RadioGroup group, int checkedId) {  
  5.     // TODO Auto-generated method stub   
  6.     if(checkedId == myRadioButton3.getId())  
  7.     {  
  8.         DisplayToast("正確答案:"+myRadioButton3.getText()+"恭喜你回答正確");  
  9.     }  
  10.     else  
  11.     {  
  12.         DisplayToast("回答錯誤");  
  13.     }  
  14. }  
  15. );  

3.CheckBox控件的使用,代碼如下:

  1. myCheckBox1.setOnCheckedChangeListener(new CheckBox.OnCheckedChangeListener(){  
  2.     @Override  
  3.     public void onCheckedChanged(CompoundButton buttonView,  
  4.             boolean isChecked) {  
  5.         // TODO Auto-generated method stub   
  6.         if(myCheckBox1.isChecked()){  
  7.             DisplayToast("你選擇了:"+myCheckBox1.getText());  
  8.         }             
  9.     }             
  10.       });  
 
  1. myCheckBox1.setOnCheckedChangeListener(new CheckBox.OnCheckedChangeListener(){  
  2.     @Override  
  3.     public void onCheckedChanged(CompoundButton buttonView,  
  4.             boolean isChecked) {  
  5.         // TODO Auto-generated method stub   
  6.         if(myCheckBox1.isChecked()){  
  7.             DisplayToast("你選擇了:"+myCheckBox1.getText());  
  8.         }             
  9.     }             
  10.       });  

4.Button控件的使用,代碼如下:

  1.      myButton1.setOnClickListener(new Button.OnClickListener(){  
  2. @Override  
  3. public void onClick(View v) {  
  4. }             
  5.      });  
 
  1.      myButton1.setOnClickListener(new Button.OnClickListener(){  
  2. @Override  
  3. public void onClick(View v) {  
  4. }             
  5.      });  

4.Spinner控件的使用,代碼如下:

  1. //Spinner控件需要跟ArrayAdapter綁定使用。   
  2.     private static final String[] m_Countries = {"A型","B型","O型","AB型","未知類型"};  
  3.     private Spinner mySpinner;  
  4.     private ArrayAdapter<String> myAdapter;  
  5.         mySpinner = (Spinner)findViewById(R.id.mySpinner1);          
  6.         myAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,m_Countries);  
  7.         //設置下拉列表風格   
  8.         myAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);  
  9.         //將adapter添加到mySpinner中   
  10.         mySpinner.setAdapter(myAdapter);  
  11.         //添加事件監聽   
  12.         mySpinner.setOnItemSelectedListener(new Spinner.OnItemSelectedListener(){  
  13.             @Override  
  14.             public void onItemSelected(AdapterView<?> arg0, View arg1,  
  15.                     int arg2, long arg3) {  
  16.                 // TODO Auto-generated method stub   
  17.                 myTextView.setText("你的血型是"+ m_Countries[arg2]);  
  18.                 arg0.setVisibility(View.VISIBLE);  
  19.             }  
  20.             @Override  
  21.             public void onNothingSelected(AdapterView<?> arg0) {  
  22.                 // TODO Auto-generated method stub   
  23.                 DisplayToast("你什麼也沒選!");  
  24.             }             
  25.         });  
 
  1. //Spinner控件需要跟ArrayAdapter綁定使用。   
  2.     private static final String[] m_Countries = {"A型","B型","O型","AB型","未知類型"};  
  3.     private Spinner mySpinner;  
  4.     private ArrayAdapter<String> myAdapter;  
  5.         mySpinner = (Spinner)findViewById(R.id.mySpinner1);          
  6.         myAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,m_Countries);  
  7.         //設置下拉列表風格   
  8.         myAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);  
  9.         //將adapter添加到mySpinner中   
  10.         mySpinner.setAdapter(myAdapter);  
  11.         //添加事件監聽   
  12.         mySpinner.setOnItemSelectedListener(new Spinner.OnItemSelectedListener(){  
  13.             @Override  
  14.             public void onItemSelected(AdapterView<?> arg0, View arg1,  
  15.                     int arg2, long arg3) {  
  16.                 // TODO Auto-generated method stub   
  17.                 myTextView.setText("你的血型是"+ m_Countries[arg2]);  
  18.                 arg0.setVisibility(View.VISIBLE);  
  19.             }  
  20.             @Override  
  21.             public void onNothingSelected(AdapterView<?> arg0) {  
  22.                 // TODO Auto-generated method stub   
  23.                 DisplayToast("你什麼也沒選!");  
  24.             }             
  25.         });  
Copyright © Linux教程網 All Rights Reserved