国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android實現標題上顯示隱藏進度條效果

2019-10-22 18:18:31
字體:
來源:轉載
供稿:網友

一個界面,實現在向頁面添加圖片時,在標題上顯示一個水平進度條,當圖片載入完畢后,隱藏進度條并顯示圖片

具體實現方法:
res/layout/main.xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  android:layout_width="fill_parent"  android:layout_height="fill_parent"  android:orientation="horizontal"  android:id="@+id/layout1"  android:gravity="center">   </LinearLayout> 

MainActivity:

package com.example.test;   import android.app.Activity; import android.os.AsyncTask; import android.os.Bundle; import android.view.ViewGroup.LayoutParams; import android.view.Window; import android.widget.ImageView; import android.widget.LinearLayout;   public class MainActivity extends Activity{  private int imageId[]=new int[]{R.drawable.img01,R.drawable.img02,    R.drawable.img03,R.drawable.img04};//定義并初始化一個保存要顯示圖片id的數組  private LinearLayout layout;  @Override  protected void onCreate(Bundle savedInstanceState) {   super.onCreate(savedInstanceState);   requestWindowFeature(Window.FEATURE_PROGRESS);//顯示水平進度條   setContentView(R.layout.main);   layout=(LinearLayout)findViewById(R.id.layout1);   new MyTack().execute();  }    /*   * 創建繼承自AsyncTask的異步類,并重寫onPreExecute()、doInBackground()、onProgressUpdate()   * 和onPostExecute方法,實現在向頁面添加圖片時,在標題上顯示一個水平進度條,當圖片載入完畢后,   * 隱藏進度條并顯示圖片   * */     //功能:創建異步任務,添加4張圖片  class MyTack extends AsyncTask<Void,Integer,LinearLayout>{      @Override   protected void onPreExecute() {    setProgressBarVisibility(true);//執行任務前讓進度條可見    super.onPreExecute();   }      //功能:要執行的耗時任務(此方法異步執行)   @Override   protected LinearLayout doInBackground(Void... params) {    LinearLayout layout2=new LinearLayout(MainActivity.this);    for (int i = 1; i < 5; i++) {     ImageView imageView=new ImageView(MainActivity.this);//創建一個ImageView對象     imageView.setLayoutParams(new LayoutParams(245,108));     imageView.setImageResource(imageId[i-1]);//設置要顯示的圖片     layout2.addView(imageView);//將imageView添加到線形布局管理器中     try {      Thread.sleep(10);//為了更好的觀察到效果,我們讓線程休眠10毫秒     } catch (InterruptedException e) {      e.printStackTrace();     }     publishProgress(i);//觸發onProgressUpdate(Progress...)方法更新進度    }    return layout2;   }      //功能:更新進度(此方法在主線程中運行)   @Override   protected void onProgressUpdate(Integer... values) {    setProgress(values[0]*2500);//動態更新最新進度    super.onProgressUpdate(values);   }   //功能:執行任務后(此方法在主線程中運行)   @Override   protected void onPostExecute(LinearLayout result) {    setProgressBarVisibility(false);//任務執行后隱藏進度條    layout.addView(result);//將水平線性布局管理器添加到布局文件中添加的垂直線性布局管理器中    super.onPostExecute(result);   }    } } 

運行效果如下:

下圖是加載過程,標題欄上方有一個進度條顯示的是加載圖片的進度

Android,進度條,隱藏,Android進度條效果

下圖是加載完成,顯示出圖片

Android,進度條,隱藏,Android進度條效果

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 永寿县| 高州市| 普兰县| 贺兰县| 康马县| 资源县| 洛阳市| 章丘市| 万全县| 封丘县| 西丰县| 普陀区| 江川县| 屏南县| 南丹县| 西乌| 陈巴尔虎旗| 麟游县| 偏关县| 扎赉特旗| 巢湖市| 拉萨市| 大理市| 商城县| 南城县| 五台县| 南靖县| 西城区| 自贡市| 乐安县| 双牌县| 嵊州市| 井研县| 宜良县| 新绛县| 宁德市| 台北市| 宜宾县| 平陆县| 永平县| 阿拉善左旗|