Android--等待loading
16lz
2021-01-26
效果图:
package utils;import android.app.Dialog;import android.content.Context;import android.view.Gravity;import android.view.LayoutInflater;import android.view.View;import android.view.Window;import android.view.WindowManager;import android.widget.LinearLayout;import android.widget.TextView;import com.example.water.R;public class loadDialogUtils { public static Dialog createLoadingDialog(Context context, String msg) { LayoutInflater inflater = LayoutInflater.from(context); View v = inflater.inflate(R.layout.dialog_loading1, null);// 得到加载view LinearLayout layout = (LinearLayout) v .findViewById(R.id.dialog_loading_view);// 加载布局 TextView tipTextView = (TextView) v.findViewById(R.id.tipTextView);// 提示文字 tipTextView.setText(msg);// 设置加载信息 Dialog loadingDialog = new Dialog(context, R.style.MyDialogStyle);// 创建自定义样式dialog loadingDialog.setCancelable(true); // 是否可以按“返回键”消失 loadingDialog.setCanceledOnTouchOutside(false); // 点击加载框以外的区域 loadingDialog.setContentView(layout, new LinearLayout.LayoutParams( LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT));// 设置布局 /** *将显示Dialog的方法封装在这里面 */ Window window = loadingDialog.getWindow(); WindowManager.LayoutParams lp = window.getAttributes(); lp.width = WindowManager.LayoutParams.MATCH_PARENT; lp.height = WindowManager.LayoutParams.WRAP_CONTENT; window.setGravity(Gravity.CENTER); window.setAttributes(lp); window.setWindowAnimations(R.style.PopWindowAnimStyle); loadingDialog.show(); return loadingDialog; } /** * 关闭dialog * * http://blog.csdn.net/qq_21376985 * * @param mDialogUtils */ public static void closeDialog(Dialog mDialogUtils) { if (mDialogUtils != null && mDialogUtils.isShowing()) { mDialogUtils.dismiss(); } }}
dialog_loading1.xml
<?xml version="1.0" encoding="utf-8"?>
styles.xml
使用方法:
public class MainActivity extends AppCompatActivity { private Dialog mDialog; private Button btn_show_weibo_loading; private Handler mHandler = new Handler() { @Override public void handleMessage(Message msg) { super.handleMessage(msg); switch (msg.what) { case 1: loadDialogUtils.closeDialog(mDialog); break; } } }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btn_show_loading = (Button) findViewById(R.id.btn_show_weibo_loading); btn_show_loading.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { mDialog = loadDialogUtils.createLoadingDialog(MainActivity.this, "加载中..."); mHandler.sendEmptyMessageDelayed(1, 3000); } }); }}
资源下载地址:https://download.csdn.net/download/chaoyu168/11217063
更多相关文章
- Android加载大量文字时关键字变色
- Android练习之BitmapFactory.decodeFile加载SD卡文件
- 将网页嵌入到android应用中
- android——ObjectAnimator动画(一)
- SplashscreenActivity随笔
- Android之handle异步加载图片
- Android中属性动画2----ObjectAnimator监听的使用
- android TextView加载html内容并加载图片
- APIDemo动画合集