国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

解析Android Widget中文API中TabWidget

移動開發
Android中文API中TabWidget的內容是本文要介紹的內容,主要是來了解并學習Android Widget 的應用及TabWidget的應用,具體內容的實現來看本文詳解。

Android中文API中TabWidget的內容是本文要介紹的內容,主要是來了解并學習Android Widget 的應用及TabWidget的應用,具體內容的實現來看本文詳解。

一、結構

  1. publicclassTabWidgetextendsLinearLayout  
  2.  
  3. implementsView.OnFocusChangeListener  
  4.  
  5. java.lang.Object  
  6.  
  7. android.view.View  
  8.  
  9. android.view.ViewGroup  
  10.  
  11. android.widget.LinearLayout  
  12.  
  13. android.widget.TabWidget 

二、概述

顯示選項卡標簽的列表,用于代表父選項卡集合的每一頁。當前widget的容器對象是TabHost。當用戶選擇一個選項卡時,此對象給父容器對象TabHost發送一個消息,告訴TabHost切換到對應的頁面顯示。此對象上的很多方法,你通常不會直接使用。容器TabHost被用來添加標簽,添加并管理回調函數。你可能會調用此對象以迭代選項卡列表,或者調整選項卡列表的布局,但大多數方法應該是通過容器TabHost對象調用。

參見TabLayouttutorial。

三、XML屬性

屬性名稱描述

android:divider可繪制對象,被繪制在選項卡窗口間充當分割物。

android:tabStripEnabled確定是否在選項卡繪制

android:tabStripLeft被用來繪制選項卡下面的分割線左邊部分的可視化對象。

android:tabStripRight被用來繪制選項卡下面的分割線右邊部分的可視化對象。

四、公共方法

  1. publicvoidaddView(Viewchild) 

增加子視圖。如果子視圖沒有設置布局參數,那么將為子視圖設置此ViewGroup默認的布局參數。

參數

child新增的子視圖

  1. publicvoidchildDrawableStateChanged(Viewchild) 

如果調用addStatesFromChildren函數返回true,刷新此組的可視化對象的狀態(包括它的子元素的狀態)。

參數

child可視化對象狀態被改變的子元素。

  1. publicvoiddispatchDraw(Canvascanvas) 

繪制時調用此方法來繪制子視圖。派生類在被繪制之前,為獲取控制可能會重寫此方法(但必須在它自己的視圖已經被繪制之后)。

參數

canvas繪制視圖的畫布(canvas)

  1. publicvoidfocusCurrentTab(intindex) 

設置當前選項卡并且讓其獲得焦點。此方法確保獲取焦點的選項卡窗口匹配選中的窗口,一般情況下類似setCurrentTab(int)。通常當我們通過操作UI實現時,這些都不是問題,因為UI負責調用TabWidget.onFocusChanged(),但如果我們通過程序控制選中選項卡窗口,那么我們就必須確認保持焦點。(譯者注:setCurrentTab(int)執行后,選中指定索引的選項卡窗口,但不獲取焦點。focusCurrentTab(int)執行后,不僅通過調用setCurrentTab(int)選中指定索引的選項卡窗口還獲取焦點。)

參數

index你想要設置焦點(橘色高亮)并且選中(選項卡被至于部件widget的前端)的選項卡。

參見

  1. setCurrentTab(int)  
  2. publicViewgetChildTabViewAt(intindex) 

返回位于指定索引位置的選項卡標識符的視圖

參數

index選項卡指示符視圖返回的從零開始的索引

返回值

在提供的索引位置上的選項卡指示符視圖

  1. publicintgetTabCount() 

返回選項卡的數量

返回值

選項卡指示符視圖的數量

  1. publicbooleanisStripEnabled() 

指明選項卡指示符的底部分隔線是否繪制

  1. publicvoidonFocusChange(Viewv,booleanhasFocus) 

當視圖的焦點狀態被改變時調用。

參數

v狀態變化的視圖

hasFocus視圖的新焦點狀態。

  1. publicvoidsendAccessibilityEventUnchecked(AccessibilityEventevent) 

處理用于發送AccessibilityEvent的請求。如果再發送之前調度事件,本方法不保證可訪問性檢查。可以通過調用者調用isEnabled()檢查。

參數

#p#

event事件

  1. publicvoidsetCurrentTab(intindex) 

設置當前選項卡。此方法被用來將選項卡置于widget的前部,并且通知其它的UI元素,一個不同的選項卡被調整到了前臺。注意,這不同于傳統的“焦點”,是從視圖邏輯的焦點。

例如,如果我們在選項卡式視圖中有一個列表,一個用戶可能會上下移動列表,通過列表選項移動UI焦點(橘色高亮)。光標的移動并不影響選項卡的選中狀態,因為滾動是在同一個選項卡上的。選中的選項卡僅僅當我們在選項卡上切換時(在此例中,從列表視圖移到下一選項卡視圖)更改。如果想要一次性的設置焦點并選中選項卡,請使用setCurrentTab(int)。

正常情況下,視圖邏輯關注調整焦點,除非你規避了UI,你可能僅僅將你的興趣集中在這里。

參數

index你想要指做選中選項卡的選項卡索引(選項卡被顯示到widget的前部)

參見

  1. focusCurrentTab(int)  
  2.  
  3. publicvoidsetDividerDrawable(Drawabledrawable) 

設置用于在選項窗口指示符間分隔的可繪制對象

參數

drawable用于分隔的可繪制對象

  1. publicvoidsetDividerDrawable(intresId) 

設置用于在兩個選項卡標識符之間進行分隔的可繪制對象

參數

resId被用來分隔的可繪制對象的資源標識

  1. publicvoidsetEnabled(booleanenabled) 

設置當前視圖的啟用狀態。子類的不同而其對應的啟用狀態的解釋也不相同。

參數

enabled是否啟動

  1. publicvoidsetLeftStripDrawable(intresId) 

設置被用來當作選項卡指示符下面的分割線,左邊部分的可繪制對象。

參數

resIdthe被用來當作左邊分隔線的可繪制對象的資源標識符

  1. publicvoidsetLeftStripDrawable(Drawabledrawable) 

設置被用來當作選項卡指示符下面的分割線,左邊部分的可繪制對象。

參數

drawable左邊分隔線的可繪制對象

  1. publicvoidsetRightStripDrawable(intresId) 

設置被用來當作選項卡指示符下面的分割線,右邊部分的可繪制對象。

參數

resId被用來當作右邊分隔線的可繪制對象的資源標識符

  1. publicvoidsetRightStripDrawable(Drawabledrawable) 

設置被用來當作選項卡指示符下面的分割線,右邊部分的可繪制對象。

參數

drawable右邊分隔線的可繪制對象

  1. publicvoidsetStripEnabled(booleanstripEnabled) 

控制選項卡指示符底部的分隔線是否繪制。默認是繪制。如果用戶為選項卡指示符指定一個定制的視圖,那么TabHost類調用此方法以禁用繪制底部分割線。

參數

stripEnabled如果需要繪制底部分割線為true

#p#

五、受保護方法

  1. protectedintgetChildDrawingOrder(intchildCount,inti) 

返回要繪制的子元素在當前迭代中的索引。如果你需要修改子元素的繪制順序,可以覆寫此方法。默認情況下返回參數i值。

注意:為使此方法被調用,你必須先通過調用setChildrenDrawingOrderEnabled(boolean)啟用子元素排序

參數

i當前的迭代值

返回值

將要繪制的子元素在當前迭代的索引

  1. protectedvoidonSizeChanged(intw,inth,intoldw,intoldh) 

布局過程中,當此視圖的大小發生改變時被調用的。如果你只是添加到視圖的層次結構,你調用時可以使用0當作之前的值(oldvalue)。

參數

w此視圖的當前寬度

h此視圖的當前高度

oldwOld此視圖之前的寬度

oldh此視圖之前的高度

示例代碼

JAVA

 

  1. public class TabDemo1 extends Activity implements OnClickListener {  
  2.  
  3.     TabHost mTabHost = null;  
  4.     TabWidget mTabWidget = null;  
  5.     Button btnVisiable, btnStrip;  
  6.  
  7.     @Override  
  8.     protected void onCreate(Bundle savedInstanceState) {  
  9.         // TODO Auto-generated method stub  
  10.         super.onCreate(savedInstanceState);  
  11.         setContentView(R.layout.tabdemo1);  
  12.         mTabHost = (TabHost) findViewById(android.R.id.tabhost);  
  13.         mTabHost.setup();  
  14.         mTabWidget = mTabHost.getTabWidget();  
  15.         mTabHost.addTab(mTabHost.newTabSpec("tab1").setContent(  
  16.                 R.id.LinearLayout001).setIndicator("Tab1"));  
  17.         mTabHost.addTab(mTabHost.newTabSpec("tab2").setContent(  
  18.                 R.id.LinearLayout002).setIndicator("Tab2"));  
  19.         mTabHost.addTab(mTabHost.newTabSpec("tab3").setContent(  
  20.                 R.id.LinearLayout003).setIndicator("Tab3"));  
  21.  
  22.         // mTabHost.setCurrentTab(1);  
  23.         btnVisiable = (Button) findViewById(R.id.btnVisiable);  
  24.         btnStrip = (Button) findViewById(R.id.btnStrip);  
  25.         btnVisiable.setOnClickListener(this);  
  26.         btnStrip.setOnClickListener(this);  
  27.         setTitle("共有" + mTabWidget.getTabCount() + "個tab");  
  28.     }  
  29.  
  30.     @Override  
  31.     public void onClick(View v) {  
  32.         // TODO Auto-generated method stub  
  33.         switch (v.getId()) {  
  34.         case R.id.btnVisiable:  
  35.             if (mTabWidget.getVisibility() != android.view.View.VISIBLE)  
  36.                 mTabWidget.setVisibility(android.view.View.VISIBLE);  
  37.             else  
  38.                 mTabWidget.setVisibility(android.view.View.INVISIBLE);  
  39.             break;  
  40.  
  41.         case R.id.btnStrip:  
  42.             mTabWidget.setStripEnabled(!mTabWidget.isStripEnabled());  
  43.             mTabWidget.setRightStripDrawable(android.R.color.transparent);  
  44.             break;  
  45.         default:  
  46.             break;  
  47.         }  
  48.     }  

XML

  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <TabHost xmlns:android="http://schemas.android.com/apk/res/android" 
  3.     android:layout_width="fill_parent" android:layout_height="fill_parent" 
  4.     android:id="@android:id/tabhost"> 
  5.     <LinearLayout android:layout_width="fill_parent" 
  6.         android:orientation="vertical" android:layout_height="fill_parent"> 
  7.             
  8.         <TabWidget android:id="@android:id/tabs" 
  9.             android:layout_width="fill_parent" android:layout_height="wrap_content"></TabWidget> 
  10.         <FrameLayout android:id="@android:id/tabcontent" 
  11.             android:layout_height="wrap_content" android:layout_width="fill_parent"> 
  12.             <LinearLayout android:id="@+id/LinearLayout001" android:orientation="vertical" 
  13.                 android:layout_width="fill_parent" android:layout_height="fill_parent"> 
  14.             <Button android:id="@+id/btnVisiable" android:text="顯示狀態切換" 
  15.                     android:layout_width="fill_parent" android:layout_height="wrap_content"></Button> 
  16.                 <Button android:id="@+id/btnStrip" android:layout_width="fill_parent" 
  17.                     android:layout_height="wrap_content" android:text="分隔線狀態切換"></Button> 
  18.                 <TextView android:id="@+id/TextView1" android:layout_width="fill_parent" 
  19.                     android:layout_height="wrap_content" android:text="小龍是好人!!!"></TextView> 
  20.                   
  21.             </LinearLayout> 
  22.             <LinearLayout android:id="@+id/LinearLayout002" 
  23.                 android:layout_width="fill_parent" android:layout_height="fill_parent"> 
  24.                 <TextView android:id="@+id/TextView2" android:layout_width="fill_parent" 
  25.                     android:layout_height="wrap_content" android:text="小龍是壞蛋!"></TextView> 
  26.             </LinearLayout> 
  27.             <LinearLayout android:id="@+id/LinearLayout003" 
  28.                 android:layout_width="fill_parent" android:layout_height="fill_parent"> 
  29.                 <TextView android:id="@+id/TextView3" android:layout_width="fill_parent" 
  30.                     android:layout_height="wrap_content" android:text="小龍還是壞蛋!"></TextView> 
  31.             </LinearLayout> 
  32.         </FrameLayout> 
  33.     </LinearLayout> 
  34. </TabHost> 

小結:解析Android Widget中文API中TabWidget的內容介紹完了,希望通過Android Widget的學習能對你有所幫助。

責任編輯:zhaolei 來源: 博客園
相關推薦

2011-09-07 14:34:55

Android Wid控件

2011-09-09 10:00:20

Android Wid開發

2011-09-07 14:01:41

Android Wid實例

2011-09-07 17:54:40

Android Wid開發

2010-07-13 09:08:27

Widget開發

2011-09-07 14:39:47

Android Wid設計

2011-09-08 15:40:45

Android Wid組件

2011-09-07 14:25:53

Android Wid設計

2010-04-23 11:21:05

Widget開發

2011-09-09 17:59:26

QT Widget

2011-09-07 10:44:05

Android Wid

2011-09-07 14:55:28

Android WidAppWidget事件

2011-09-08 16:17:45

Widget

2011-09-08 14:21:37

jQueryWidget

2011-09-09 19:23:52

Widget

2011-09-09 13:23:17

Widget

2011-09-14 11:31:26

Android API

2011-09-14 13:35:55

Android API

2011-09-14 13:18:59

Android API

2011-09-14 14:08:23

Android API
點贊
收藏

51CTO技術棧公眾號

亚洲精品日韩精品| 77777在线| 精品freesex老太交| 一本色道久久88精品综合| 在线三级电影| 色欧美乱欧美15图片| 77777在线| 国产精品夫妻自拍| 无码人妻精品一区二区三区66| 精品一区二区三区影院在线午夜| 九色91在线视频| 在线高清一区| 91免费在线视频| 亚洲91精品| 99精品国产一区二区| 久久一区91| 国产精品入口尤物| 精品理论电影| 国产精品亚发布| 亚洲第一偷拍| 国产三区精品| 日韩电影免费一区| 一本一道久久a久久综合精品| 麻豆成人久久精品二区三区小说| 亚洲午夜在线观看| 国产成a人亚洲精| 日韩欧美在线播放视频| 国产欧美视频一区二区三区| 97福利电影| 欧美色另类天堂2015| 免费a级毛片在线观看| 欧洲激情一区二区| 欧美xxxx做受欧美88bbw| 日韩av中文字幕在线免费观看| 亚洲天堂资源| 欧美精品在线第一页| 亚洲+变态+欧美+另类+精品| 国产区精品视频| 国产精品久久久久久久免费软件| 欧美色欧美亚洲另类七区| 国产在线视频一区二区三区| 成年网站在线免费观看| 亚洲人成网站在线| 免费在线黄色影片| 亚洲黄色av女优在线观看| 精品久久久网| 国产福利精品av综合导导航| 欧美日一区二区三区在线观看国产免| 精品午夜一区二区| 国产电影一区在线| 成人性生交免费看| 欧美午夜精品在线| 国产第一页在线视频| 一区二区三区四区视频| 你懂的视频欧美| 欧美一区二区在线视频观看| bt欧美亚洲午夜电影天堂| 中文字幕一区二区三区域| 欧美日韩国产成人在线免费| 中文字幕在线看片| 日韩av电影免费观看高清| 国产日韩欧美一区二区三区在线观看| 9999在线观看| 夜夜嗨av一区二区三区网页| 18+视频在线观看| 欧美激情综合色| 久久成人亚洲| avtt天堂资源网| 精品少妇一区二区三区| 国产精品毛片av| 免费久久99精品国产自| 久久色.com| 欧美天天影院| 国模叶桐国产精品一区| 免费永久网站黄欧美| 99热手机在线观看| 日韩欧美亚洲另类制服综合在线| 日韩精品中文字幕一区二区 | 亚洲午夜av久久乱码| 久久av免费| 色撸撸在线观看| 欧美日在线观看| 国产精品视频一区二区三区| 精品一卡二卡三卡四卡日本乱码| 久久精品一区二区三区不卡| 18+视频在线观看| 国产精品人人做人人爽| av不卡免费在线观看| 国产精品扒开做爽爽爽的视频 | 久久精品一级| 日本日本精品二区免费| 亚洲国产精品一区二区www在线| 伊人久久av| 国产呦系列欧美呦日韩呦| 亚洲天堂中文字幕| 亚洲国产精选| 一级黄色免费在线观看| 91国产精品成人| 国产欧美日韩在线一区二区| 国产成人久久婷婷精品流白浆| 精品女同一区二区| 亚洲视频观看| 日本私人影院在线观看| 九九精品在线播放| 极品少妇一区二区三区精品视频| 激情小视频在线观看| 全亚洲最色的网站在线观看| 91在线观看一区二区| 伊人久久国产| 在线观看一区二区三区三州 | 久久精品视频va| 蜜臀av国产精品久久久久| 视频在线不卡| 国产成人精品一区二区三区| 亚洲国产精品成人久久综合一区| 亚洲精品动漫| 日韩偷拍一区二区| 在线不卡一区二区| 在线免费观看日本欧美爱情大片| 8848hh四虎| 97人人模人人爽人人喊中文字 | 精品一区二区三区视频在线播放| 综合操久久久| 欧美一区二区三区免费视频| 影音先锋国产精品| 国产资源在线播放| 成人在线视频网| 狠狠久久亚洲欧美专区| 少妇精品久久久一区二区三区| 四虎4hu新地址入口2023| 久久97精品久久久久久久不卡| 91在线一区二区| 中文字幕成人| 人人干人人视频| 97视频在线观看网址| 综合精品久久久| 日本不卡二三区| 日本韩国精品一区二区| 2019国产精品视频| 精品视频在线免费观看| 国产亚洲激情| aa国产成人| r级无码视频在线观看| 欧美成aaa人片免费看| 国产精品久久久久影院色老大| 久久久蜜桃精品| 精品久久一区| 永久www成人看片| 中文字幕在线看视频国产欧美在线看完整 | 久久99久久人婷婷精品综合| 黄色片一级视频| 九九综合九九综合| 中文字幕一区二区三区不卡| 任我爽精品视频在线播放| 成人黄色激情网站| 国产成人avxxxxx在线看| 五月婷婷激情综合网| 亚洲国产日本| 夜鲁夜鲁夜鲁视频在线播放| 欧美a v在线播放| 人体精品一二三区| 欧美午夜在线观看| 国产一区三区三区| 日韩欧美久久| jizz欧美大全| 久久久福利视频| 亚洲天堂成人在线视频| 国产精品久久久久一区二区三区| 91欧美日韩| 国产美女精品写真福利视频| 成年人黄色片视频| 国产欧美在线看| 日韩高清免费在线| 亚洲欧美在线视频观看| 欧美国内亚洲| 嫩草伊人久久精品少妇av杨幂| 福利在线白白| 免费久久99精品国产自| 中文字幕av一区二区三区谷原希美| 亚洲欧洲日韩一区二区三区| 亚洲高清久久| 日本免费一区二区三区视频| 深夜福利免费在线观看| 日韩不卡视频一区二区| 欧美亚洲在线观看| 亚洲精品福利在线| 一区二区三区丝袜| 国产乱人伦精品一区二区在线观看 | 精品国产乱码久久久久久久软件| 亚洲欧美另类国产| 亚洲国产精品久久人人爱| 日韩精品一级中文字幕精品视频免费观看 | 国产99精品一区| 性欧美videos高清hd4k| 中国黄色片免费看| 日本一区高清不卡| 欧美最猛性xxxx| 亚洲视频在线免费观看| 欧美午夜影院在线视频| 国产清纯在线一区二区www|