我的工具真是太少了--IOS弹出提示框
2015-10-21 15:54
531 查看
1.为什么做这个弹出框?
a.Android自带的弹出框确实太丑了,而且版本不同弹出的效果还不一样!
b.纯粹的new一个AlertDialog要写很多行,代码维护不便,重复劳动啊!
c.代码看起多,不简洁,肯定不爽!
2.如何做一个简洁的弹出框用于提示!
a.建立一个class继承Dialog
public class IOSDialog extends Dialog {
public IOSDialog(Context context) {
super(context,R.style.ThemeIOSDialog);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.iso_dialog);
Button btnOk = (Button) findViewById(R.id.btn_ok);
btnOk.setOnClickListener(new android.view.View.OnClickListener() {
@Override
public void onClick(View v) {
cancel();
}
});
}
}
b.在res/values/styles里面写入样式,便于设置dialog的背景为透明
<!-- IOSDialog -->
<style name="ThemeIOSDialog" parent="@android:style/Theme.Dialog">
<!-- Dialog的windowFrame框为无 -->
<!-- <item name="android:windowFrame">@null</item> -->
<!-- 边框 -->
<item name="android:windowIsFloating">true</item>
<!-- 是否浮现在activity之上 -->
<item name="android:windowIsTranslucent">false</item>
<!-- 半透明 -->
<item name="android:windowNoTitle">true</item>
<!-- 设置dialog的背景 -->
<item name="android:windowBackground">@android:color/transparent</item>
<!-- 背景是否模糊显示 -->
<item name="android:backgroundDimEnabled">true</item>
<!-- 模糊 -->
<item name="android:textColorPrimaryInverse">@android:color/black</item>
</style>
c.最后在写入布局文件,应用于dialog
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/ios_dlg_bg"
android:layout_marginBottom="16dp"
>
<View
android:id="@+id/view_line"
android:layout_below="@+id/text1"
android:layout_height="0.5dp"
android:layout_width="fill_parent"
android:background="#dcdcdc"
/>
<Button
android:gravity="center"
android:textSize="18sp"
android:textStyle="bold"
android:layout_below="@+id/view_line"
android:text="确定"
android:textColor="#037BFF"
android:id="@+id/btn_ok"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:background="@android:color/transparent"
android:padding="12dp"
/>
<TextView
android:gravity="center"
android:id="@+id/text1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="16dp"
android:text="你的运气真是太好了!"
android:textColor="#666666"
android:textSize="14sp" />
</RelativeLayout>
d.最后,在Activity里面需要的地方调用就可以啦
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_activity);
Button btnIOSDialog = (Button) findViewById(R.id.button1);
btnIOSDialog.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
new IOSDialog(MainActivity.this).show();
}
});
}
}
***无真相:http://download.csdn.net/detail/xiaoshubing/9200489
相关文章推荐
- 修改iOS StatusBar 字体颜色为白色
- ios TableView那些事(三十 二)Tableview一直显示滚动条
- 截图 iOS
- 笔记2--iOS特殊方法调用实测记录
- iOS程序破解——获取.ipa程序包
- IOS CocoaPods 使用
- 新版本SDWebImage使用
- iOS 9 适配中一定会遇到的大坑合集
- 带你走进iOS系统的更新路
- Masonry在iOS7.1的兼容性问题
- iOS9 ReplayKit 支持设备
- iOS开发>学无止境 - 获取经纬度及城市名称
- IOS数据存储方式(NSUserDefaults)
- iOS开发中@2x等后缀的图片干嘛用的
- IOS学习之 TextKit
- 几个iOS工程通用模块介绍
- iOS 自定义button
- 用CocoaPods做iOS程序的依赖管理
- ios断点续传:NSURLSession和NSURLSessionDataTask实现
- iOS开发系列--地图与定位