您好,登錄后才能下訂單哦!
效果圖如下所示:
類似這種彈框里含有動畫,一般我們在上傳數(shù)據(jù)或者支付的時候會用到,當然,假如我們換幾張圖片,還可以把它當做是加載數(shù)據(jù)的時候使用,總之這是一個dialog彈框,只不過這個彈框在彈出后,上面有動畫的運行。
上代碼
首先是布局文件 :
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="200dp" android:layout_width="200dp" android:layout_centerInParent="true" android:background="@drawable/bg_custom_toast"> <LinearLayout android:layout_height="150dp" android:layout_width="150sp" android:orientation="vertical" android:gravity="center" android:layout_centerInParent="true"> <ImageView android:layout_width="60dp" android:layout_height="60dp" android:layout_gravity="center_horizontal" android:src="@mipmap/weixin_loading"/> <TextView android:id="@+id/text_loading" android:layout_height="wrap_content" android:layout_width="wrap_content" android:layout_gravity="center_horizontal" android:layout_marginTop="5dp" android:text="微信支付"/> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/frame2" android:layout_gravity="center_horizontal"/> </LinearLayout> </RelativeLayout>
其中 drawable/bg_custom_toast 是一個背景色
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <solid android:color="#90000000" /> <corners android:radius="8dip" /> </shape>
frame2 是一個承載圖片的載體,在布局文件里引用
<?xml version="1.0" encoding="utf-8"?> <animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="false" > <item android:drawable="@mipmap/appload1" android:duration="150"/> <item android:drawable="@mipmap/appload2" android:duration="150"/> <item android:drawable="@mipmap/appload3" android:duration="150"/> <item android:drawable="@mipmap/appload4" android:duration="150"/> <item android:drawable="@mipmap/appload5" android:duration="150"/> <item android:drawable="@mipmap/appload6" android:duration="150"/> <item android:drawable="@mipmap/appload7" android:duration="150"/> <item android:drawable="@mipmap/appload8" android:duration="150"/> </animation-list>
然后是 Dialog
package com.example.administrator.loadxin; import android.app.Dialog; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.view.WindowManager; /** * Created by Administrator on 2017/6/21 0021. */ public class WeiXinDialog { String message=null; private Dialog dialog; private Context context; public WeiXinDialog(Context context) { this.context = context; } public void show(){ dialog = new Dialog(context, R.style.MyDialogStyle); View view = LayoutInflater.from(context).inflate(R.layout.weixin_dialog,null,false); dialog.setContentView(view); dialog.show(); WindowManager.LayoutParams lp = dialog.getWindow() .getAttributes(); lp.width = ViewGroup.LayoutParams.WRAP_CONTENT; lp.height = ViewGroup.LayoutParams.WRAP_CONTENT; dialog.getWindow().setAttributes(lp); } public void dismiss(){ if(dialog != null){ dialog.dismiss(); } } }
最后是在mainactivity里引用這個dialog
package com.example.administrator.loadxin; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button btn= (Button) findViewById(R.id.button); btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { final WeiXinDialog dialog1 = new WeiXinDialog(MainActivity.this); dialog1.show(); } }); } }
以上所述是小編給大家介紹的Android 提交或者上傳數(shù)據(jù)時的彈框動畫效果,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網(wǎng)站的支持!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。