最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android編程實現(xiàn)自定義Tab選項卡功能示例

 更新時間:2017年02月13日 11:59:26   作者:Gobby.X  
這篇文章主要介紹了Android編程實現(xiàn)自定義Tab選項卡功能,結(jié)合完整實例形式分析了Android自定義tab選項卡的遍歷、設(shè)置及屬性操作相關(guān)技巧,需要的朋友可以參考下

本文實例講述了Android編程實現(xiàn)自定義Tab選項卡功能。分享給大家供大家參考,具體如下:

import android.app.TabActivity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.*;
import android.widget.TabHost.OnTabChangeListener;
import android.os.Build;
import android.view.View;
import java.lang.reflect.Field;
import android.view.LayoutInflater;
public class testTabActivity extends TabActivity {
 /** Called when the activity is first created. */
   @Override
   public void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     int width =45;
     int height =48;
     final TabHost tabs = getTabHost();
     final TabWidget tabWidget = tabs.getTabWidget();
     Field mBottomLeftStrip;
     Field mBottomRightStrip;
     LayoutInflater.from(this).inflate(R.layout.tab_views, tabs.getTabContentView(), true);
     tabs.addTab(tabs.newTabSpec("first tab")
       .setIndicator("信息",getResources().getDrawable(R.drawable.m))
       .setContent(new Intent(testTabActivity.this,OneActivty.class))
       );
     tabs.addTab(tabs.newTabSpec("second tab")
     .setIndicator("收藏",getResources().getDrawable(R.drawable.n))
     .setContent(R.id.content));
     tabs.addTab(tabs.newTabSpec("second tab")
       .setIndicator("設(shè)置",getResources().getDrawable(R.drawable.s))
       .setContent(R.id.content));
     for (int i =0; i < tabWidget.getChildCount(); i++) {
       /**
       * 設(shè)置高度、寬度,不過寬度由于設(shè)置為fill_parent,在此對它沒效果
       */
       tabWidget.getChildAt(i).getLayoutParams().height = height;
       tabWidget.getChildAt(i).getLayoutParams().width = width;
     /**
      * 設(shè)置tab中標(biāo)題文字的顏色,不然默認(rèn)為黑色
      */
      final TextView tv = (TextView) tabWidget.getChildAt(i).findViewById(android.R.id.title);
      tv.setTextColor(this.getResources().getColorStateList(android.R.color.white));
       /**
       * 此方法是為了去掉系統(tǒng)默認(rèn)的色白的底角
       *
       * 在 TabWidget中mBottomLeftStrip、mBottomRightStrip
       * 都是私有變量,但是我們可以通過反射來獲取
       *
       * 由于還不知道Android 2.2的接口是怎么樣的,現(xiàn)在先加個判斷好一些
       */
     if (Float.valueOf(Build.VERSION.RELEASE) <= 2.1) {
        try {
          mBottomLeftStrip = tabWidget.getClass().getDeclaredField ("mBottomLeftStrip");
          mBottomRightStrip = tabWidget.getClass().getDeclaredField ("mBottomRightStrip");
          if(!mBottomLeftStrip.isAccessible()) {
           mBottomLeftStrip.setAccessible(true);
          }
          if(!mBottomRightStrip.isAccessible()){
           mBottomRightStrip.setAccessible(true);
          }
         mBottomLeftStrip.set(tabWidget, getResources().getDrawable (R.drawable.no));
         mBottomRightStrip.set(tabWidget, getResources().getDrawable (R.drawable.no));
        } catch (Exception e) {
         e.printStackTrace();
        }
     } else {
     /**
     * 不做任何處理
     */
     }
     View vvv = tabWidget.getChildAt(i);
  if(tabs.getCurrentTab()==i){
      vvv.setBackgroundDrawable(getResources().getDrawable(R.drawable.tab_button));
  }
  else {
      vvv.setBackgroundDrawable(getResources().getDrawable(R.drawable.bar));
  }
     }
     /**
     * 當(dāng)點擊tab選項卡的時候,更改當(dāng)前的背景
     */
     tabs.setOnTabChangedListener(new OnTabChangeListener(){
  @Override
  public void onTabChanged(String tabId) {
   // TODO Auto-generated method stub
   for (int i =0; i < tabWidget.getChildCount(); i++) {
   View vvv = tabWidget.getChildAt(i);
   if(tabs.getCurrentTab()==i){
       vvv.setBackgroundDrawable(getResources().getDrawable(R.drawable.tab_button));
   }
   else {
       vvv.setBackgroundDrawable(getResources().getDrawable(R.drawable.bar));
   }
   }
  }});
   }
}

更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android開發(fā)入門與進階教程》、《Android編程之a(chǎn)ctivity操作技巧總結(jié)》、《Android資源操作技巧匯總》、《Android文件操作技巧匯總》、《Android操作SQLite數(shù)據(jù)庫技巧總結(jié)》、《Android操作json格式數(shù)據(jù)技巧總結(jié)》、《Android數(shù)據(jù)庫操作技巧總結(jié)》、《Android編程開發(fā)之SD卡操作方法匯總》、《Android視圖View技巧總結(jié)》及《Android控件用法總結(jié)

希望本文所述對大家Android程序設(shè)計有所幫助。

相關(guān)文章

  • viewPager+fragment刷新緩存fragment的方法

    viewPager+fragment刷新緩存fragment的方法

    這篇文章主要介紹了viewPager+fragment刷新緩存fragment的方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-03-03
  • Android實現(xiàn)文字消除效果

    Android實現(xiàn)文字消除效果

    由于項目和語音識別相關(guān),有時候人在不經(jīng)意間交流的無效音頻會被識別出來,并展示于界面,為了美觀,客戶要求我們將這些無效的識別文本用一個從右到左的動畫給清除,于是便有了下述的技術(shù)實現(xiàn)。感興趣的朋友可以參考下
    2021-06-06
  • Android App開發(fā)中HTTP擴展包OkHttp的入門使用指南

    Android App開發(fā)中HTTP擴展包OkHttp的入門使用指南

    OkHttp包為安卓開發(fā)中基于HTTP協(xié)議的網(wǎng)絡(luò)編程提供了很大便利,這里我們就來看一下Android App開發(fā)中HTTP擴展包OkHttp的入門使用指南:
    2016-07-07
  • Android編程繪圖操作之弧形繪制方法示例

    Android編程繪圖操作之弧形繪制方法示例

    這篇文章主要介紹了Android編程繪圖操作之弧形繪制方法,結(jié)合實例形式分析了Android圖形繪制的相關(guān)組件調(diào)用、屬性設(shè)置與功能實現(xiàn)技巧,需要的朋友可以參考下
    2017-08-08
  • 使用Android studio創(chuàng)建的AIDL編譯時找不到自定義類的解決辦法

    使用Android studio創(chuàng)建的AIDL編譯時找不到自定義類的解決辦法

    這篇文章主要介紹了使用Android studio創(chuàng)建的AIDL編譯時找不到自定義類的解決辦法的相關(guān)資料,需要的朋友可以參考下
    2016-02-02
  • Flutter Android應(yīng)用啟動白屏的解決方案

    Flutter Android應(yīng)用啟動白屏的解決方案

    任何一個app基本都會設(shè)計一個啟動頁,今天我們就來看看怎么在flutter項目中設(shè)置啟動頁,這篇文章主要給大家介紹了關(guān)于Flutter Android應(yīng)用啟動白屏解決的相關(guān)資料,需要的朋友可以參考下
    2021-11-11
  • Android對EditTex的圖片實現(xiàn)監(jiān)聽

    Android對EditTex的圖片實現(xiàn)監(jiān)聽

    這篇文章主要為大家詳細(xì)介紹了Android如何對EditTex的圖片實現(xiàn)監(jiān)聽,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • Android實現(xiàn)記住密碼功能

    Android實現(xiàn)記住密碼功能

    這篇文章主要為大家詳細(xì)介紹了Android實現(xiàn)記住密碼功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-09-09
  • Android SQLite數(shù)據(jù)庫連接實現(xiàn)登錄功能

    Android SQLite數(shù)據(jù)庫連接實現(xiàn)登錄功能

    這篇文章主要為大家詳細(xì)介紹了Android SQLite數(shù)據(jù)庫連接實現(xiàn)登錄功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-10-10
  • 解決Android studio模擬器啟動失敗的問題

    解決Android studio模擬器啟動失敗的問題

    這篇文章主要介紹了Android studio模擬器啟動失敗的問題及解決方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03

最新評論

贡山| 罗田县| 荣成市| 上思县| 射阳县| 大宁县| 河北省| 三都| 凤山市| 微博| 昌都县| 昭觉县| 开封县| 汽车| 鹤山市| 家居| 新化县| 花莲市| 武城县| 小金县| 秦皇岛市| 务川| 泰兴市| 宜黄县| 格尔木市| 志丹县| 湖州市| 蚌埠市| 修水县| 望江县| 苏尼特右旗| 木里| 阿克苏市| 高平市| 江口县| 垫江县| 永兴县| 交城县| 灵川县| 邢台县| 石渠县|