亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

加載頁(yè)面遮擋耗時(shí)操作任務(wù)頁(yè)面--第三方開(kāi)源之AndroidProgressLayout

 更新時(shí)間:2015年11月29日 14:57:18   作者:Z2  
AndroidProgressLayout實(shí)現(xiàn)為界面添加圓形進(jìn)度條。調(diào)用setprogress()方法顯示和隱藏進(jìn)度條,這篇文章主要介紹了加載頁(yè)面遮擋耗時(shí)操作任務(wù)頁(yè)面--第三方開(kāi)源之AndroidProgressLayout的相關(guān)資料,需要的朋友可以參考下

AndroidProgressLayout實(shí)現(xiàn)為界面添加圓形進(jìn)度條。調(diào)用setprogress()方法顯示和隱藏進(jìn)度條

在Android的開(kāi)發(fā)中,往往有這種需求,比如一個(gè)耗時(shí)的操作,聯(lián)網(wǎng)獲取網(wǎng)絡(luò)圖片、內(nèi)容,數(shù)據(jù)庫(kù)耗時(shí)讀寫(xiě)等等,在此耗時(shí)操作過(guò)程中,開(kāi)發(fā)者也許不希望用戶(hù)再進(jìn)行其他操作(其他操作可能會(huì)引起邏輯混亂),而此時(shí)需要給用戶(hù)一個(gè)額外的加載頁(yè)面遮擋住主邏輯代碼的運(yùn)行,待主頁(yè)面的耗時(shí)操作完成后,自動(dòng)消失這樣加載過(guò)度頁(yè)面,恢復(fù)出正常應(yīng)該顯示的頁(yè)面。

舉個(gè)實(shí)際的例子,如代碼使用Android WebView打開(kāi)一個(gè)網(wǎng)頁(yè)鏈接試圖加載某個(gè)網(wǎng)站,但網(wǎng)絡(luò)質(zhì)量不佳,需要耗時(shí)很久,那么在這個(gè)過(guò)程中,較好的用戶(hù)體驗(yàn)做法是:給用戶(hù)一個(gè)加載進(jìn)度頁(yè)面,遮擋住WebView。當(dāng)加載的內(nèi)容成功后在完全切換回正常的邏輯頁(yè)面。

Android AndroidProgressLayout實(shí)現(xiàn)了這樣的功能,Android AndroidProgressLayout在github上的項(xiàng)目主頁(yè)是:https://github.com/antonkrasov/AndroidProgressLayout

測(cè)試代碼如下:

activity_main.xml:

 <com.github.androidprogresslayout.ProgressLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:progressLayout="http://schemas.android.com/apk/res-auto"
 android:id="@+id/progressLayout"
 android:layout_width="match_parent"
 android:layout_height="match_parent" >
 <TextView
  android:id="@+id/textView"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:textSize="sp"
  android:layout_centerInParent="true" />
 </com.github.androidprogresslayout.ProgressLayout>

MainActivity.java:

package com.zzw.testandroidprogresslayout;
 import com.github.androidprogresslayout.ProgressLayout;
 import android.app.Activity;
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.Message;
 import android.view.animation.Animation;
 import android.widget.TextView;
 public class MainActivity extends Activity {
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  final ProgressLayout progressLayout = (ProgressLayout) findViewById(R.id.progressLayout);
  final TextView textView = (TextView) findViewById(R.id.textView);
  Handler handler = new Handler() {
  @Override
  public void handleMessage(Message msg) {
   textView.setText("測(cè)試完成");
   // 切換回正常顯示頁(yè)面
   progressLayout.showContent();
  }
  };
  // 開(kāi)始加載... 假設(shè)從這里開(kāi)始一個(gè)耗時(shí)的操作將開(kāi)始啟動(dòng),在此啟動(dòng)過(guò)程中,開(kāi)發(fā)者希望用戶(hù)稍事休息,等待。。。
  progressLayout.showProgress();
  // 假設(shè)有一個(gè)耗時(shí)的加載業(yè)務(wù)邏輯,需要秒完成。
  handler.sendEmptyMessageDelayed(, );
 }
 }

以上內(nèi)容是小編給大家分享的關(guān)于加載頁(yè)面遮擋耗時(shí)操作任務(wù)頁(yè)面--第三方開(kāi)源之AndroidProgressLayout的全部敘述,希望大家喜歡。

相關(guān)文章

最新評(píng)論