安卓開發中高階元件之選項卡的應用
在安卓開發的UI設計中,為了使介面更加清晰、美觀,我們經常用到選項卡來達到在一個介面中實現不同介面的切換。選項卡主要是由TabHost、TabWidget和FrameLayout三個元件組成,用於實現一個多標籤頁的使用者介面,通過它可以將一個複雜的對話方塊分割成若干個標籤頁,實現對資訊的分類顯示和管理。使用該元件不僅可以使介面簡潔大方,還可以有效地減少窗體的個數。下面,以“慧辦公”專案中“輔助辦公”模組為例來說明實現選項卡的一般步驟:
(1)在佈局檔案中新增實現選項卡所需的TabHost、TabWidget和FrameLayout元件;
<?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">
<LinearLayout
android:orientation="vertical"
android:background="#F7F5F4"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<include
android:id="@+id/QD_Head"
android:layout_width="fill_parent"
android:layout_height="40dp"
layout="@layout/head_title" />
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
</TabWidget>
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
</FrameLayout>
</LinearLayout>
</TabHost>
(2)編寫各標籤頁中要顯示內容所對應的XML佈局檔案;
(3)在Activity中獲取並初始化TabHost元件;
tabhost=(TabHost)findViewById(android.R.id.tabhost);
tabhost.setup(); //初始化TabHost元件
(4)為TabHost物件新增標籤頁;
LayoutInflater inflater=LayoutInflater.from(this);
inflater.inflate(R.layout.tab1,tabhost.getTabContentView());
inflater.inflate(R.layout.tab2, tabhost.getTabContentView());
tabhost.addTab(tabhost.newTabSpec("tab1").setIndicator("已到人員").setContent(R.id.linearlayout1)); //新增第一個標籤頁
tabhost.addTab(tabhost.newTabSpec("tab2").setIndicator("缺勤人員").setContent(R.id.linearlayout2)); //新增第二個標籤頁
相關推薦
安卓開發中高階元件之選項卡的應用
在安卓開發的UI設計中,為了使介面更加清晰、美觀,我們經常用到選項卡來達到在一個介面中實現不同介面的切換。選項卡主要是由TabHost、TabWidget和FrameLayout三個元件組成,用於實現一個多標籤頁的使用者介面,通過它可以將一個複雜的對話方塊分割成
安卓開發進階之RxJava在實際專案中使用--第二篇
關於RxJava原理分析,請參考仍物線寫的文章—-給 Android 開發者的 RxJava 詳解。本文不對原理作過多的分析,從最快上手的角度,讓開發者使用起來,當我們有實踐經驗後回過頭來看原理分析會更清晰。 本系列共有三篇文章,分別關於Rxjava的基礎使用
安卓四大控制元件之BroadcastReceiver詳解
BroadcastReceiver詳解 廣播的概念 Android:系統在產生某個事件時傳送廣播,應用程式使用廣播接收者接收這個廣播,就知道系統產生了什麼事件。 Android系統在執行的過程中,會產生很多事件,比如開機、電量改變、收發簡訊、撥打電話、螢
[安卓開發基礎] 10.19 選項選單 上下文選單
. 1.在res 路徑下 ---new----Directory ---menu: 2. main_menu.xml 新增選單 item 項: <?xml version="1.0" encoding="utf-8"?> <men
安卓開發:SmartImageView簡單實現和應用
overload override ans geb actor dsta pub pac 獲取 通常從服務器端獲取的圖片是URL地址,如果簡單地通過URL地址獲取圖片? 有一個開源項目:SmartImageView,做到了這個功能,同時還有其他功能,下載不便,過於龐大 這裏
安卓開發(一)時間管理應用DayPlay
需求分析: 日常生活中,人們常常會因為拖拉而無法按時完成任務。“你有多少時間,就會花多少時間做一件事”,似乎是常人的通病。也許你開始時躊躇滿志,目標明確,可是時間一長往往就會偏離目標,將時間浪費在一些無謂的事情上。缺乏適時的、足夠多的提醒是主因。 當前,
C++ Builder XE8 安卓開發之使用TidTCPClient控制元件獲取接收資料長度的方法
本人在使用indy10.6.2的TCPClient控制元件時,由於沒有indy10的使用手冊,一直不知道如何獲取client接收資料的長度。 後來經過仔細的尋找和嘗試,終於找到了獲取接收資料長度的方法
C++ Builder XE8 安卓開發之使用TIdThreadComponent控制元件接收客戶端的資料
C++ Builder中自帶了indy10控制元件,由於indy10的TCPClient接收方式是阻塞式的,所以需要一個執行緒來接收資料。 indy10本身有一個執行緒控制元件: 把它放在介面中就可以使用了。 我是在OnRun函式中新增自己的程式碼,雖然可以成功執行,
初學安卓開發隨筆之 Menu、toast 用法、活動的四種啟動模式 以及 一個方便的Base活動類使用方法
pro 一點 cte edi standard oid nal xtend 解釋 Toast toast 是安卓系統的一種非常棒的提醒方式 首先定義一個彈出Toast的觸發點,比如可以是按鈕之類 其中 Toast.LENGTH_SHORT是指顯示時長 還有一個內置變量為To
安卓開發之配置參數幫忙寫代碼 一
str size arr www 流程 () 安卓開發 ttext obj 在尋常的安卓開發中,流程都是這種,先把要須要顯示的界面繪制出來,在發送一個http請求。
安卓開發:sd卡操作
use AS con AI string extern toast path 沒有 1.向sdcard中寫入數據: 發現向/mnt/sdcard路徑寫數據會報錯,原因:沒有開啟相應權限 解決:配置文件中加入 <uses-permission android:
粵嵌安卓開發之路在何方?
根據 移動平臺 想要 一般來說 架構師 不錯 機會 如果 未來 安卓已經發行多年,其Android開發領域趨於成熟穩定,同時整個移動互聯網仍在快速前進,移動應用也需要不斷進化,對安卓開發人員的要求也不斷提高。在未來,安卓開發還會像現在這樣吃香嗎?這也是粵嵌小編接下來要提到的
安卓開發之應用上架的那些事兒
應用市場 需要 不一致 安裝失敗 安卓開發 安卓 app 上架 那些事兒 工作的過程中遇到這樣的需求:要上架這個App到應用市場中,但是,應用市場中已經有了叫同樣名稱的App了,新上架的要頂替原來的,並且用戶安裝時以前下載到手機裏的這個名稱的app被替換掉。 這時我
Android 開發:(三)安卓常用控制元件以及仿《微門戶》登入介面實現
一、常用控制元件: 1、文字類控制元件 TextView 負責展示文字,非編輯 EditText 可編輯文字控制元件 2、按鈕類控制元件 Button 按鈕 ImageButton 圖片按鈕 RadioButton與RadioGroup 單
安卓開發之socket的IP地址
1、IP地址獲取 socket.getInetAddress():本客戶端的IP地址 返回:/192.168.1.108 &
安卓開發之不通過USB資料線除錯的方法
搞安卓開發的程式設計師肯定都需要用又笨又礙手礙腳的USB資料線連線安卓裝置進行除錯,是不是覺得非常麻煩? 然後為了避免這種麻煩,我們一般通過網路上的各種方法,比如AS的外掛ADB WIFI,不知道大家是如何使用 這個ADB WIFI的,反正我是重來沒成功過,據說需要ROOT安卓裝置吧,但ROOT我依然不成
安卓開發學習筆記(五):史上最簡單且華麗地實現Android Stutio當中Webview控制元件https/http協議的方法
一.我們先在XML當中自定義一個webview(Second_layout.xml) 程式碼如下: 1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.an
安卓開發實戰之app之版本更新升級(DownloadManager和http下載)完整實現
前言 本文將講解app的升級與更新。一般而言使用者使用App的時候升級提醒有兩種方式獲得: 一種是通過應用市場 獲取 一種是開啟應用之後提醒使用者更新升級 而更新操作一般是在使用者點選了升級按鈕之後開始執行的,這裡的升級操作也分為兩種形式: 一般升
安卓開發學習之dataBinding的學習使用
背景 dataBinding資料繫結是谷歌推出的基於觀察者模式的資料和頁面內容的繫結,擁有廣闊的應用前景。 使用 使能 dataBinding使能只需要在module的gradle檔案里加上這麼一段話 android { ... dataBin
安卓開發學習之自定義Toast的實現
背景 吐司提示很常見,但系統的吐司有一個缺點,就是顯示時長不能自定義,而自定義Toast可以實現這一點 實現步驟 整體思路是:活動視窗發出彈出吐司請求,然後中間層接收請求,發給排程層,排程層顯示吐司 這裡請求的傳遞就是方法的呼叫,顯示和消除吐司的關鍵是呼叫windo