Android編程實(shí)現(xiàn)顯示在標(biāo)題上的進(jìn)度條功能【附源碼下載】
本文實(shí)例講述了Android編程實(shí)現(xiàn)顯示在標(biāo)題上的進(jìn)度條功能。分享給大家供大家參考,具體如下:
今天我們來學(xué)習(xí)一下Android中顯示在Activity標(biāo)題上的進(jìn)度條。在這個(gè)例子當(dāng)中我們還能夠?qū)W習(xí)到很多關(guān)于AsyncTask的知識(shí)。
(1)準(zhǔn)備用于顯示到界面上的四張圖片img01,img02,img03,img04
(2)在Activity的布局文件activity_main.xml中只定義一個(gè)線性布局LinearLayout,并為其設(shè)置一個(gè)id,代碼如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:id="@+id/main_layout"> </LinearLayout>
(3)Java代碼部分,通過requestWindowFeature(Window.FEATURE_PROGRESS);
語句設(shè)置Activity標(biāo)題欄為有進(jìn)度條風(fēng)格,然后實(shí)例化并啟動(dòng)一個(gè)MyTask對(duì)象,代碼如下:
public class MainActivity extends Activity { //圖片id數(shù)組 private int[] imageIds = { R.drawable.img01, R.drawable.img02, R.drawable.img03, R.drawable.img04 }; private LinearLayout mainLayout; /** * Activity的入口方法 */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //設(shè)置標(biāo)題欄有進(jìn)度條 requestWindowFeature(Window.FEATURE_PROGRESS); setContentView(R.layout.activity_main); mainLayout = (LinearLayout)findViewById(R.id.main_layout); //實(shí)例化MyTask并開始執(zhí)行 new MyTask().execute(); } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.activity_main, menu); return true; } /** * 自定義繼承AsyncTask的異步類MyTask */ class MyTask extends AsyncTask<Void, Integer, LinearLayout>{ /** * 在doInBackground()方法之前執(zhí)行的方法 */ @Override protected void onPreExecute() { super.onPreExecute(); //設(shè)置標(biāo)題欄的進(jìn)度條可見 setProgressBarVisibility(true); } /** * 后臺(tái)執(zhí)行的耗時(shí)操作 */ @Override protected LinearLayout doInBackground(Void... params) { LinearLayout ll = new LinearLayout(MainActivity.this); ll.setOrientation(LinearLayout.VERTICAL); ll.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT)); for(int i=1; i<5; i++){ ImageView iv = new ImageView(MainActivity.this); iv.setLayoutParams(new LayoutParams(200, 100)); iv.setImageResource(imageIds[i-1]); ll.addView(iv); new Thread(){ public void run() { try { //休眠20毫秒 Thread.sleep(20); } catch (Exception e) { e.printStackTrace(); } }; }.start(); //要求更新進(jìn)度條,會(huì)引起調(diào)用onProgressUpdate()方法 publishProgress(i); } return ll; } /** * 更新進(jìn)度條 */ @Override protected void onProgressUpdate(Integer... values) { super.onProgressUpdate(values); //參數(shù)值為0-10000,所以要乘以2500,values[0]取值分別是1,2,3,4 setProgress(values[0] * 2500); } /** * 后臺(tái)操作執(zhí)行完畢后所要執(zhí)行的方法 */ @Override protected void onPostExecute(LinearLayout result) { super.onPostExecute(result); mainLayout.addView(result); } } }
右鍵運(yùn)行android project,效果如下:
進(jìn)度條執(zhí)行完畢后,界面會(huì)顯示四張圖片。
附:完整實(shí)例代碼點(diǎn)擊此處本站下載。
更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android開發(fā)入門與進(jìn)階教程》、《Android調(diào)試技巧與常見問題解決方法匯總》、《Android多媒體操作技巧匯總(音頻,視頻,錄音等)》、《Android基本組件用法總結(jié)》、《Android視圖View技巧總結(jié)》、《Android布局layout技巧總結(jié)》及《Android控件用法總結(jié)》
希望本文所述對(duì)大家Android程序設(shè)計(jì)有所幫助。
- Android 下載文件通知欄顯示進(jìn)度條功能的實(shí)例代碼
- Android實(shí)現(xiàn)標(biāo)題上顯示隱藏進(jìn)度條效果
- android多線程斷點(diǎn)下載-帶進(jìn)度條和百分比進(jìn)度顯示效果
- Android多線程+單線程+斷點(diǎn)續(xù)傳+進(jìn)度條顯示下載功能
- Android自定義多節(jié)點(diǎn)進(jìn)度條顯示的實(shí)現(xiàn)代碼(附源碼)
- Android使用AsyncTask下載圖片并顯示進(jìn)度條功能
- Android 進(jìn)度條顯示在標(biāo)題欄的實(shí)現(xiàn)方法
- Android上傳文件到服務(wù)端并顯示進(jìn)度條
- Android實(shí)現(xiàn)支持進(jìn)度條顯示的短信備份工具類
- android實(shí)現(xiàn)動(dòng)態(tài)顯示隱藏進(jìn)度條
相關(guān)文章
Android中EditText 設(shè)置 imeOptions 無效問題的解決方法
有時(shí)候我們需要在EditText 輸出完之后 需要在鍵盤出現(xiàn) 右下角變成“Go”或“前往 搜索時(shí);通常我們需要設(shè)置Android:imeOptions屬性,但是今天我發(fā)現(xiàn)設(shè)置了無效,下面給大家分享下解決方案2016-12-12Android之自定義實(shí)現(xiàn)BaseAdapter(通用適配器三)
這篇文章主要為大家詳細(xì)介紹了Android之自定義實(shí)現(xiàn)BaseAdapter通用適配器第三篇,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-12-12Android開發(fā)歡迎頁點(diǎn)擊跳過倒計(jì)時(shí)進(jìn)入主頁
沒點(diǎn)擊跳過自然進(jìn)入主頁,點(diǎn)擊跳過之后立即進(jìn)入主頁,這個(gè)功能怎么實(shí)現(xiàn)呢,本文通過實(shí)例代碼給大家介紹Android開發(fā)歡迎頁點(diǎn)擊跳過倒計(jì)時(shí)進(jìn)入主頁,感興趣的朋友一起看看吧2023-12-1220.5 語音合成(百度2016年2月29日發(fā)布的tts引擎)
編寫手機(jī)App時(shí),有時(shí)需要使用文字轉(zhuǎn)語音(Text to Speech)的功能,比如開車時(shí)閱讀收到的短信、導(dǎo)航語音提示、界面中比較重要的信息通過語音強(qiáng)調(diào)2016-03-03Android應(yīng)用圖標(biāo)在狀態(tài)欄上顯示實(shí)現(xiàn)原理
Android應(yīng)用圖標(biāo)在狀態(tài)欄上顯示,以及顯示不同的圖標(biāo),其實(shí)很研究完后,才發(fā)現(xiàn),很簡單,具體實(shí)現(xiàn)如下,感興趣的朋友可以參考下哈2013-06-06Android控件ListView用法(讀取聯(lián)系人示例代碼)
本文以一個(gè)讀取聯(lián)系人的代碼為大家講解下Android控件中ListView的使用方法,這個(gè)listView有個(gè)setAdapter 適配器,里面可以直接實(shí)現(xiàn)接口,或者寫個(gè)類2013-06-06android 左右滑動(dòng)+索引圖標(biāo)實(shí)現(xiàn)方法與代碼
使用Gallery和ImageView實(shí)現(xiàn)android左右滑動(dòng)+索引圖標(biāo)效果,接下來詳細(xì)介紹,有需要的朋友可以參考下2012-12-12