亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

自定義android的tab樣式 《》

系統 2882 0

android項目中碰到需要替換tabHost默認樣式的情況,需要達到下圖的效果:
自定義android的tab樣式 《》

為了做成這樣的效果,花了些時間,這里做個筆記,給有需要的朋友。

步驟一:新建一 個xml布局文件,命名main.xml

<? xml version ="1.0" encoding ="utf-8" ?>
< TabHost xmlns:android ="http://schemas.android.com/apk/res/android"
?? android:id ="@android:id/tabhost" android:layout_width ="fill_parent"
?? android:layout_height ="fill_parent" android:background ="@color/white" >
?? < LinearLayout android:orientation ="vertical"
???? android:layout_width ="fill_parent" android:layout_height ="fill_parent" >
???? < TabWidget android:id ="@android:id/tabs"
?????? android:layout_width ="fill_parent" android:layout_height ="wrap_content"
?????? android:gravity ="center_horizontal|center_vertical" />
???? < FrameLayout android:id ="@android:id/tabcontent"
?????? android:layout_width ="fill_parent" android:layout_height ="fill_parent" >
???? </ FrameLayout >
?? </ LinearLayout >
</ TabHost >


步 驟二:在Activity中添加我們的tab

代碼如下

@Override
public void onCreate(Bundle savedInstanceState) {
?? super .onCreate(savedInstanceState);
??setContentView(R.layout.main);
? mTabHost = getTabHost();
??? ???
? Intent intent1 = new Intent(this,OfficialActivity.class);
? createTab("公共聊天室",intent1);
??? ???
? Intent intent2 = new Intent(this, NearByActivity.class);
? createTab("周邊",intent2);
??? ???
? Intent intent3= new Intent(this, HistoryActivity.class);
? createTab("歷史",intent3);
??? ???
? mTabHost.setCurrentTab(1);
}

?private void createTab(String text ,Intent intent){????????? mTabHost.addTab(mTabHost.newTabSpec(text).setIndicator(createTabView(text)).setContent(intent));
??? }

??? private View createTabView(String text) {
??? ??? ??? View view = LayoutInflater.from(this).inflate(R.layout.tab_indicator, null);
??? ??? ??? TextView tv = (TextView) view.findViewById(R.id.tv_tab);
??? ??? ??? tv.setText(text);
??? ??? ??? return view;
??? }


步驟三:在createTabView方法中,我 們載入了布局文件tab_indicator.xml,改布局很簡單,就是放置一個帶背景的布局,在布局中放一個textView用于顯示tab標題,以 下為該布局文件內容

<? xml version ="1.0" encoding ="utf-8" ?>
< LinearLayout xmlns:android ="http://schemas.android.com/apk/res/android"
?? android:layout_height ="fill_parent" android:layout_width ="fill_parent"
?? android:orientation ="vertical" android:gravity ="center"
?? android:theme ="@android:style/Theme.NoTitleBar" android:background ="@drawable/chat_tab_selector" >
?? < TextView android:id ="@+id/tv_tab" android:layout_width ="wrap_content" android:layout_height ="wrap_content"
?? android:text ="tab1" android:textColor ="@color/white" />
</ LinearLayout >


步驟四:在上面的布局文件中我們把該布局的背景定義為 chat_tab_selector,這里同樣需要在drawable文件夾下新建chat_tab_selector.xml,內容很簡單,就是做一個 按下時的背景切換,內容如下:

<? xml version ="1.0" encoding ="utf-8" ?>
???????? < selector xmlns:android = "http://schemas.android.com/apk/res/android" > ????
???????? < item ????
????????android:state_focused = "true"????
????????android:drawable = "@drawable/topbar_bg_down"????
???????? />
???????? < item ????
????????android:state_selected = "true"????
????????android:drawable = "@drawable/topbar_bg_down"????
???????? />
???????? < item ????
????????android:state_pressed = "true"????
????????android:drawable = "@drawable/topbar_bg_down"????
???????? /> ????
???????? < item android:drawable = "@drawable/topbar_background" /> ????
???????? </ selector > ????


里面做了兩張圖進行狀態切換,這兩張圖同樣放 drawable下就可以了

至此,自定義tab的步驟就完成了。如果要做成更復雜的樣式,大家可以在此基礎上進行擴展。

自定義android的tab樣式 《》


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 五月婷婷免费视频 | 日日操夜夜爽 | 性成人动作片在线看 | 波多野结衣日韩 | 久久99久久99精品免观看不卡 | 国产毛片在线高清视频 | 涩色在线 | 18视频在线观看 | 久久婷婷综合在线视频观看6 | 欧美aaaaa一级毛片在线 | 老妇综合久久香蕉蜜桃 | 国产在线原创剧情麻豆 | 国产精品亚洲精品一区二区三区 | 欧美中文综合在线视频 | 亚洲日本欧美日韩高观看 | 日本一级毛片 | 99视频久久 | 欧美成人性色生活片天天看 | 亚洲尹人香蕉网在线视颅 | 中国女人和老外的毛片 | 国产高清自拍视频 | 日韩精品一区二区三区乱码 | 欧美精品v欧洲高清 | 久草视频新 | 美女色片 | 五月天婷婷在线视频 | 国产精品亚洲专一区二区三区 | 奇米影视在线播放 | 91免费网站在线看入口黄 | 国产成人精品无缓存在线播放 | 91福利免费 | 青青青国产高清免费视频 | 99色视频在线 | 国产a自拍 | 亚洲视频播放 | 精品成人免费一区二区在线播放 | 国产亚洲美女精品久久久 | 国产精品亚洲综合色拍 | 自拍在线视频 | 四虎影院网站 | 看全大色黄大色黄大片一级爽 |