91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android中怎么實現加載對話框效果

發布時間:2021-08-07 15:16:06 來源:億速云 閱讀:159 作者:Leah 欄目:編程語言

Android中怎么實現加載對話框效果,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

第一種方式:使用動畫讓一個圖片旋轉

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/dialog_bg_while" android:orientation="vertical" > <ImageView  android:layout_width="54dp"  android:id="@+id/loading_dialog_pic"  android:layout_height="54dp"  android:layout_gravity="center_horizontal"  android:layout_marginTop="15dp"  android:background="@drawable/loading" /> <TextView  android:layout_width="wrap_content"  android:layout_height="wrap_content"  android:layout_gravity="center_horizontal"  android:layout_marginTop="10dp"  android:text="正在加載..." /></LinearLayout>

然后自定義Alertdialog,并對圖片添加旋轉動畫:

public class LoadingDialog extends AlertDialog { private final String DEFAULT_TEXT="正在加載"; private ImageView mImageview; private TextView mTextView; private LinearLayout mLayout; private String mText; protected LoadingDialog(Context context) { super(context); // TODO Auto-generated constructor stub } @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); mLayout=(LinearLayout) LinearLayout.inflate(getContext(), R.layout.loading_dialog, null); mImageview=(ImageView) mLayout.findViewById(R.id.loading_dialog_pic); mTextView=(TextView) mLayout.findViewById(R.id.loading_dialog_text); loadanimation(); getWindow().setContentView(mLayout); } private void loadanimation() {//對圖片添加旋轉動畫 // TODO Auto-generated method stub Animation anim=AnimationUtils.loadAnimation(getContext(), R.anim.loading_dialog_anim); LinearInterpolator lin = new LinearInterpolator(); anim.setInterpolator(lin); mImageview.setAnimation(anim); }}

看一下xml的動畫:

<?xml version="1.0" encoding="utf-8"?><set xmlns:android="http://schemas.android.com/apk/res/android" > <rotate  android:duration="1500"  android:pivotX="50%"  android:pivotY="50%"  android:fromDegrees="0.0"  android:repeatCount="infinite"  android:toDegrees="-358" /></set>

第二種方式:使用progressbar

首先是一個animation-list:

<?xml version="1.0" encoding="utf-8"?><animation-list xmlns:android="http://schemas.android.com/apk/res/android" > <item  android:drawable="@drawable/loading1"  android:duration="100"/> <item  android:drawable="@drawable/loading2"  android:duration="100"/> <item  android:drawable="@drawable/loading3"  android:duration="100"/> <item  android:drawable="@drawable/loading4"  android:duration="100"/> <item  android:drawable="@drawable/loading5"  android:duration="100"/> <item  android:drawable="@drawable/loading6"  android:duration="100"/> <item  android:drawable="@drawable/loading7"  android:duration="100"/> <item  android:drawable="@drawable/loading8"  android:duration="100"/></animation-list>

看一下布局的實現:

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@drawable/dialog_bg_while" android:orientation="vertical" > <ProgressBar    android:layout_width="wrap_content"  android:layout_height="wrap_content"  android:layout_gravity="center_horizontal"  android:layout_marginTop="10dp"  android:indeterminateDrawable="@drawable/loading_animation_list"  android:indeterminateDuration="1500" /> <View  android:layout_width="match_parent"  android:layout_height="1dp"  android:background="#00BCD4" /> <TextView  android:id="@+id/loading_dialog_text"  android:layout_width="wrap_content"  android:layout_height="wrap_content"  android:layout_gravity="center_horizontal"  android:layout_marginTop="10dp"  android:text="正在加載..." /></LinearLayout>

然后自定義一個alertdialog:

public class LoadingDialog extends AlertDialog { private final String DEFAULT_TEXT="正在加載"; private TextView mTextView; private LinearLayout mLayout; private String mText; protected LoadingDialog(Context context) { super(context); // TODO Auto-generated constructor stub } @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); mLayout=(LinearLayout) LinearLayout.inflate(getContext(), R.layout.loading_dialog, null); mTextView=(TextView) mLayout.findViewById(R.id.loading_dialog_text); WindowManager m=(WindowManager) getContext().getSystemService(getContext().WINDOW_SERVICE); int windowwith=m.getDefaultDisplay().getWidth(); int w=windowwith*3/5; int h=300; getWindow().setLayout(w, h);//設置對話框窗體大小 getWindow().setContentView(mLayout); }}

關于Android中怎么實現加載對話框效果問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

樟树市| 易门县| 城步| 海兴县| 宜兰市| 巴马| 大埔县| 宣城市| 固始县| 大洼县| 波密县| 莱西市| 沧州市| 远安县| 墨竹工卡县| 曲水县| 溧水县| 米易县| 阳城县| 兴山县| 邵阳县| 林州市| 洛川县| 罗甸县| 南部县| 望谟县| 泗水县| 巴林右旗| 景德镇市| 分宜县| 灵宝市| 塘沽区| 周至县| 九江市| 黑龙江省| 伽师县| 龙山县| 房山区| 册亨县| 辽宁省| 清丰县|