Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發實例 >> Android進階:學習新浪微博自定義radioButton樣式

Android進階:學習新浪微博自定義radioButton樣式

編輯:Android開發實例

Android帶的那個RadioButton樣子真是難看了 有木有啊

 

 

 

一般我們用的時候這個要根據整體的界面風格來定義,看著才順眼,新浪微博裡面有個這樣的自定義樣式,學習了下

 

來看效果:

 

  

 

稍微看著順眼點了吧

 

來看實現,首先布局文件

 

  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
  3.     android:orientation="vertical" 
  4.     android:layout_width="fill_parent" 
  5.     android:layout_height="fill_parent" 
  6.     android:background="@drawable/search_bg" 
  7.     > 
  8. <RadioGroup android:gravity="center" 
  9.                     android:layout_gravity="bottom"   
  10.                     android:orientation="horizontal" 
  11.                     android:id="@+id/searchRadioGroup"   
  12.                     android:layout_width="fill_parent"   
  13.                     android:layout_height="wrap_content" > 
  14.                     <RadioButton android:textSize="17.0sp"   
  15.                         android:id="@+id/searchRadioShare" 
  16.                         android:tag="radio_button0"   
  17.                         android:text="搜索微博" 
  18.                         android:layout_weight="1"   
  19.                         style="@style/CustomLeftRadioBtn"> 
  20.                     </RadioButton> 
  21.                     <RadioButton android:textSize="17.0sp"   
  22.                         android:id="@+id/searchRadioUser" 
  23.                         android:tag="radio_button1" 
  24.                         android:text="搜索用戶" 
  25.                         android:layout_weight="1"   
  26.                         style="@style/CustomRightRadioBtn"> 
  27.                     </RadioButton> 
  28. </RadioGroup> 
  29. </LinearLayout> 

 

在RadioGroup中定義RadioButton並設置style="@style/CustomLeftRadioBtn"

 

定義如下

 

 

  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <resources> 
  3.     <mce:style name="CustomLeftRadioBtn"><!--  
  4.         <item name="android:button">@null</item>   
  5.         <item name="android:drawableLeft">@drawable/search_radio_1</item> 
  6.         <item name="android:background">@drawable/search_left</item> 
  7.             <item name="android:gravity">center_vertical</item>   
  8.           
  9.       
  10. --></mce:style><style name="CustomLeftRadioBtn" mce_bogus="1">      <item name="android:button">@null</item>   
  11.         <item name="android:drawableLeft">@drawable/search_radio_1</item> 
  12.         <item name="android:background">@drawable/search_left</item> 
  13.             <item name="android:gravity">center_vertical</item>   
  14.           
  15.     </style> 
  16.      <mce:style name="CustomRightRadioBtn"><!--  
  17.         <item name="android:button">@null</item>   
  18.         <item name="android:drawableLeft">@drawable/search_radio_1</item> 
  19.         <item name="android:background">@drawable/search_right</item> 
  20.         <item name="android:gravity">center_vertical</item>   
  21.       
  22. --></mce:style><style name="CustomRightRadioBtn" mce_bogus="1">     <item name="android:button">@null</item>   
  23.         <item name="android:drawableLeft">@drawable/search_radio_1</item> 
  24.         <item name="android:background">@drawable/search_right</item> 
  25.         <item name="android:gravity">center_vertical</item>   
  26.     </style> 
  27. </resources>  

 

然後添加Onclick事件就可以了

 

 

  1. import android.app.Activity;  
  2. import android.os.Bundle;  
  3. import android.view.View;  
  4. import android.view.View.OnClickListener;  
  5. import android.widget.Button;  
  6. import android.widget.Toast;  
  7. public class RadioButtonDemo extends Activity {  
  8.     /** Called when the activity is first created. */ 
  9.     @Override 
  10.     public void onCreate(Bundle savedInstanceState) {  
  11.         super.onCreate(savedInstanceState);  
  12.         setContentView(R.layout.main);  
  13.           
  14.         Button searchRadioShare = (Button) findViewById(R.id.searchRadioShare);  
  15.         Button searchRadioUser = (Button) findViewById(R.id.searchRadioUser);  
  16.           
  17.         searchRadioShare.setOnClickListener(l);  
  18.         searchRadioUser.setOnClickListener(l);  
  19.     }  
  20.       
  21.     private View.OnClickListener l = new OnClickListener(){  
  22.         @Override 
  23.         public void onClick(View v) {  
  24.             if(v.getId()==R.id.searchRadioShare){  
  25.                 Toast.makeText(RadioButtonDemo.this, "搜索微博", Toast.LENGTH_LONG).show();  
  26.             }else{  
  27.                 Toast.makeText(RadioButtonDemo.this, "搜索用戶", Toast.LENGTH_LONG).show();  
  28.             }  
  29.               
  30.         }  
  31.           
  32.     };  

 

可以下載項目:RadioButtonDemo

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved