編輯:中級開發
在手機有限的屏幕裡面,有時候我們要安排較多的內容可能無法容納,當然我們可以使用版面的滾動功能,但是這樣做顯得不是很好看,而且有時候我們需要對不同功能集合的控件集中在各自的面板中,這就需要使用面板Tab控件了。
面板控件的好處是能在一個界面上同時顯示不同的面板內容,通過面板標簽方便的切換到不同的面板上面,下面開始介紹這個Tab控件的使用,為了直觀起見,我們直接從例子介紹Tab控件的兩種顯示方法。
布局文件中定義兩個Tab中顯示的內容,這裡以TextVIEw為例。
<?XML version="1.0" encoding="utf-8"?>
<FrameLayout XMLns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent">
<!C Tab 1 中顯示的內容 C>
<TextVIEw android:id="@+id/content1" android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="tab1 content" />
<!C Tab 2 中顯示的內容 C>
<TextVIEw android:id="@+id/content2" android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="tab2 content" />
</FrameLayout>
在程序中使用Tab並調用布局中的控件:
public class _Tab extends TabActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TabHost tabHost = getTabHost();
LayoutInflater.from(this).inflate(R.layout.tab, tabHost.getTabContentVIEw(), true);
// Tab 1 的內容
tabHost.addTab(tabHost.newTabSpec("tab1")
.setIndicator("tab1", getResources().getDrawable(R.drawable.p1))
.setContent(R.id.vIEw1));
// Tab 2 的內容
tabHost.addTab(tabHost.newTabSpec("tab2")
.setIndicator("tab2", getResources().getDrawable(R.drawable.p1))
.setContent(R.id.vIEw2));
// Tab 3 的內容(用指定的 Activity來設置 Tab 的內容)
tabHost.addTab(tabHost.newTabSpec("tab3")
.setIndicator("tab3", getResources().getDrawable(R.drawable.p1))
.setContent(new Intent(this, _TextVIEw.class)));
}
}
由以上例子可見,Tab的使用主要的方法有addTab、setIndicator、setContent,另外,除了使用布局文件來定義Tab中顯示的內容,還可以直接把另一個Activity作為Tab的內容顯示,使得每個Tab面板的內容獨立開來。
在Android 3.0中除了我們重點講解的Fragment外,Action Bar也是一個重要的內容,Action Bar主要是用於代替傳統的標題欄,對於androi
在android開發應用中,默認的Button是由系統渲染和管理大小的。而我們看到的成功的移動應用,都是有著酷炫的外觀和使用體驗的。因此,我們在開發產品的時候,需要對默
簡介: 在這個由五個部分所組成的系列的第一部分中,您將接觸到移動 Web 應用程序中最流行的新技術:地理定位。高端智能手機都內置 GPS,現在您將了解 Web
簡介: HTML 5 針對移動 Web 應用程序引入了大量新特性,其中包括一些可視化特性,它們通常會帶來強烈的視覺沖擊。Canvas 是最引人注目的新 UI