Android 開發(fā)使用PopupWindow實(shí)現(xiàn)加載等待界面功能示例
本文實(shí)例講述了Android 開發(fā)使用PopupWindow實(shí)現(xiàn)加載等待界面功能。分享給大家供大家參考,具體如下:
實(shí)現(xiàn)加載等待界面我用了兩種方式,一種是用PopupWindow實(shí)現(xiàn),另一種便是用Activity實(shí)現(xiàn)。用Activity實(shí)現(xiàn)方法請見我的另一篇博客:
Android 使用Activity實(shí)現(xiàn)加載等待界面
首先看效果:

用PopupWindow實(shí)現(xiàn)此功能還是比較簡單的,首先我們寫一個(gè)布局,只有一個(gè)登錄按鈕,用于觸發(fā)等待界面:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:orientation="vertical" tools:context="com.toprs.myapplication.MainActivity"> <Button android:text="登錄" android:layout_width="match_parent" android:layout_height="wrap_content" android:onClick="loginClick" android:id="@+id/button2"/> </LinearLayout>
然后為登錄按鈕添加監(jiān)聽事件:
package com.wang.myapplication;
import ...
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void loginClick(View v){
final PopupWindow popupWindow = new PopupWindow();
popupWindow.setHeight(ViewGroup.LayoutParams.WRAP_CONTENT);
popupWindow.setWidth(ViewGroup.LayoutParams.WRAP_CONTENT);
popupWindow.setFocusable(true);
View view = LayoutInflater.from(this).inflate(R.layout.popup,null);
popupWindow.setContentView(view);
popupWindow.showAtLocation(getWindow().getDecorView(), Gravity.CENTER,0,0);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
Toast.makeText(MainActivity.this, "登錄成功", Toast.LENGTH_SHORT).show();
popupWindow.dismiss();
}
},2000);
}
}
其中彈出的PopupWindow需要一個(gè)布局,也就是簡單放入一個(gè)ProgressBar:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="200dp"
android:layout_height="200dp">
<ProgressBar
android:id="@+id/progressBar4"
style="?android:attr/progressBarStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"/>
</RelativeLayout>
大功告成,運(yùn)行一下即可??!
更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android控件用法總結(jié)》、《Android開發(fā)入門與進(jìn)階教程》、《Android視圖View技巧總結(jié)》、《Android編程之a(chǎn)ctivity操作技巧總結(jié)》、《Android數(shù)據(jù)庫操作技巧總結(jié)》及《Android資源操作技巧匯總》
希望本文所述對大家Android程序設(shè)計(jì)有所幫助。
相關(guān)文章
Android手機(jī)(設(shè)備)連接掃描槍掃碼遇到的問題
這篇文章給大家分享了Android手機(jī)(設(shè)備)連接掃描槍掃碼遇到的問題以及解決辦法,有需要的參考下。2018-07-07
從源碼分析Android的Glide庫的圖片加載流程及特點(diǎn)
這篇文章主要介紹了從源碼分析Android的Glide庫的圖片加載流程及特點(diǎn),Glide庫是Android下一款人氣很高的多媒體資源管理庫,特別是在處理gif加載方面受到眾多開發(fā)者青睞,需要的朋友可以參考下2016-04-04
Android通過反射實(shí)現(xiàn)強(qiáng)制停止應(yīng)用程序的方法
這篇文章主要介紹了Android通過反射實(shí)現(xiàn)強(qiáng)制停止應(yīng)用程序的方法,涉及Android的反射機(jī)制與進(jìn)程操作的相關(guān)技巧,需要的朋友可以參考下2016-02-02
Android使用ViewFlipper實(shí)現(xiàn)上下滾動消息
這篇文章主要為大家詳細(xì)介紹了Android使用ViewFlipper實(shí)現(xiàn)上下滾動消息,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-07-07
Android中RecyclerView布局代替GridView實(shí)現(xiàn)類似支付寶的界面
RecyclerView比GridView來得更加強(qiáng)大,不僅是在分割線的繪制方面,在條目的編輯上也做得同樣出色,下面就來看一下Android中RecyclerView布局代替GridView實(shí)現(xiàn)類似支付寶的界面的實(shí)例2016-06-06
Android調(diào)試出現(xiàn)The selected device is incompatible問題解決
這篇文章主要介紹了Android調(diào)試出現(xiàn)The selected device is incompatible問題解決的相關(guān)資料,需要的朋友可以參考下2017-01-01

