自定义Dialog 背景透明
来源:互联网 发布:黑社会性质团伙知乎 编辑:程序博客网 时间:2024/05/16 16:08
好久没写博文了,今天我跟大家介绍一种dialog ,相信对大家的帮助一定很多.当我们提交一个请求道服务器,在没有得到请求前不准用户进行任何操作,屏幕出现一个这样的dialog
当得到网网速结果时dialog.dismiss()消失,用户重新可以操作界面了. 这样的一个dialog是不是大大的简便了我们队应用程序的控制呢.好了废话少说进入正题:
1,首先你必须自定义layout
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/dialog_view" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:minHeight="60dp" android:minWidth="180dp" android:gravity="center" android:padding="10dp" > <ImageView android:id="@+id/img" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/publicloading" /> <TextView android:id="@+id/tipTextView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="10dp" /> </LinearLayout>
关键是imageView 不能少因为旋转的效果是通过imageview调用startAnimation()方法实现的,下面的textview是提示用的.
2.自定义一个style
<style name="loading_dialog" parent="android:style/Theme.Dialog"> <item name="android:windowFrame">@null</item> <item name="android:windowNoTitle">true</item> <item name="android:windowBackground">@drawable/transpant_bg</item> <item name="android:windowIsFloating">true</item> <item name="android:windowContentOverlay">@null</item> </style>记住transpant_bg是透明的
transpant_bg.xml内容如下
<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android"android:shape="rectangle"><gradientandroid:startColor="@android:color/transparent"android:endColor="@android:color/transparent"android:angle="270.0" ></gradient></shape>3,最后是代码实现了
public static Dialog createLoadingDialog(Context context, String msg) {LayoutInflater inflater = LayoutInflater.from(context);View v = inflater.inflate(R.layout.toast, null);// 得到加载viewLinearLayout layout = (LinearLayout) v.findViewById(R.id.dialog_view);// 加载布局// main.xml中的ImageViewImageView spaceshipImage = (ImageView) v.findViewById(R.id.img);TextView tipTextView = (TextView) v.findViewById(R.id.tipTextView);// 提示文字// 加载动画Animation hyperspaceJumpAnimation = AnimationUtils.loadAnimation(context, R.anim.loading_animation);// 使用ImageView显示动画spaceshipImage.startAnimation(hyperspaceJumpAnimation);tipTextView.setText(msg);// 设置加载信息Dialog loadingDialog = new Dialog(context, R.style.loading_dialog);// 创建自定义样式dialogloadingDialog.setCancelable(false);// 不可以用“返回键”取消loadingDialog.setContentView(layout, new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT,LinearLayout.LayoutParams.FILL_PARENT));// 设置布局return loadingDialog;}接下来实例用法:当你点击测试网速是show(), 当接到stop命令式dismiss().够不够详细呢.觉得满意的话留个言咯,楼主需要鼓励的.
@Override
public void onClick(View v) {
if (mBack.isMyChild(v)) {
Util.finish(this);
} else if (v == mMeasureSpeed) {
mMeasureSpeed.setEnabled(false);
// mBar.setVisibility(View.VISIBLE);
mDialog = Util.createLoadingDialog(this, "");
mDialog.show();
}
private Handler mProgressHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case LOADING:
mBar.setProgress(mProgressState);
break;
case STOP:
mBar.setVisibility(View.GONE);
mDialog.dismiss();
setSpeed();
mMeasureSpeed.setEnabled(true);
break;
default:
break;
}
}
};
- 自定义Dialog背景透明
- 自定义Dialog 背景透明
- android自定义dialog弹出框、透明背景
- 透明背景dialog
- Dialog背景透明
- activity dialog 透明背景
- Dialog背景透明
- android 自定义Dialog背景透明及显示位置设置
- android 自定义Dialog背景透明及显示位置设置
- android 自定义Dialog背景透明及显示位置设置
- android 自定义Dialog背景透明及显示位置设置
- android 自定义Dialog背景透明及显示位置设置
- android 自定义Dialog背景透明及显示位置设置
- android 自定义Dialog背景透明及显示位置设置
- android 自定义Dialog背景透明及显示位置设置(转载)
- android 自定义Dialog背景透明及显示位置设置
- android 自定义Dialog背景透明及显示位置设置
- android 自定义Dialog背景透明及显示位置设置
- 传智播客秀一秀
- C++重载下标操作符const & nonconst 成员函数使用比较
- 函数计算N的阶乘
- 调整Oracle数据库中表字段的顺序
- Linux NFS服务器的安装与配置
- 自定义Dialog 背景透明
- URI && URL区别
- 金额小写转大写
- Eclipse远程调试Tomcat
- 基于MINA框架快速开发网络应用程序
- Jquery 对 身份证号码的验证 (15/18位)
- Flex mxmlc 编译参数
- http 详解
- JNI本地文件中怎么打印输出到LOGCAT