Dialog 之高仿IOS
2017-10-30 13:58
190 查看
不得不说IOS系统的对话框确实漂亮 那么 我们就也来上一套
布局文件很简单 就是照着效果图自己贴 考虑到适配的问题 还需要自己做处理 public class DialogIos extends Dialog { private Context context; private String titleMessage; private String contontMessage; public DialogIos(Context context, String titleMessage,String contontMessage) { super(context,R.style.dialog_custom); this.context = context; this.titleMessage = titleMessage; this.contontMessage = contontMessage; } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Window window = getWindow(); window.setGravity(Gravity.CENTER); setContentView(R.layout.dialog_ios_layout); setCanceledOnTouchOutside(false);// 点击Dialog外部消失 initView(); } private void initView() { TextView diolog_title = (TextView) findViewById(R.id.diolog_title); diolog_title.setText(titleMessage); TextView diolog_contont = (TextView) findViewById(R.id.diolog_contont); diolog_contont.setText(contontMessage); TextView comfirm_choose = (TextView) findViewById(R.id.comfirm_choose); comfirm_choose.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (null != onclickItemListen){ onclickItemListen.OnitemClick("1"); } } }); TextView cancle_choose = (TextView) findViewById(R.id.cancle_choose); cancle_choose.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (null != onclickItemListen){ onclickItemListen.OnitemClick("0"); } } }); } public interface OnclickItemListen{ void OnitemClick(String contont); } public OnclickItemListen onclickItemListen; public void SetOnCLickListen(OnclickItemListen onclickItemListen){ this.onclickItemListen = onclickItemListen; } } <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:background="@drawable/button_write_back" android:layout_width="match_parent" android:layout_height="wrap_content"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="70dp" android:gravity="center" android:orientation="vertical"> <TextView android:id="@+id/diolog_title" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginBottom="5dp" android:gravity="center" android:text="提示" android:textColor="@color/black" android:textSize="16dp" /> <TextView android:id="@+id/diolog_contont" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center" android:text="是否删除该地址" android:textColor="@color/black" android:textSize="14dp" /> </LinearLayout> <View android:layout_width="match_parent" android:layout_height="1px" android:background="@color/line_eee" /> <LinearLayout android:layout_width="match_parent" android:layout_height="40dp"> <TextView android:id="@+id/cancle_choose" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center" android:text="取消" android:textColor="#00f" android:textSize="15dp" /> <View android:layout_width="1px" android:layout_height="match_parent" android:background="@color/line_eee" /> <TextView android:id="@+id/comfirm_choose" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center" android:text="确定" android:textColor="@color/red_color" android:textSize="15dp" /> </LinearLayout> </LinearLayout> </LinearLayout> <!-- dialog样式 --> <style name="dialog_custom" parent="@android:style/Theme.Dialog"> <item name="android:windowIsFloating">true</item> <!--是否浮在界面上 4000 --> <item name="android:windowIsTranslucent">true</item> <!--是否半透明--> <item name="android:windowNoTitle">true</item> <!--是否有标题--> <item name="android:windowBackground">@android:color/transparent</item> <!--窗口背景色透明--> <item name="android:backgroundDimEnabled">true</item> <!--背景是否模糊显示--> </style>
具体用法
DialogIos dialogIos = new DialogIos(AddHbuyDynamicsActivity.this,"信息未完善","完善用户名、手机号、邮箱、头像、地区\n生日等才可以发帖哦~"); dialogIos.SetOnCLickListen(new DialogIos.OnclickItemListen() { @Override public void OnitemClick(String contont) { if ("1".equals(contont)){ startActivity(new Intent(AddHbuyDynamicsActivity.this, HbuyUserDetailActivity.class)); dialogIos.cancel(); }else { dialogIos.cancel(); } } }); dialogIos.show();
写的很仓促 稍后会将他做一个完善 网上也有一个仿IOS的 SuperDialog 大家可以去看一下
相关文章推荐
- Android开篇之高仿ios风格的自定义Dialog
- 通过DialogFragment玩转高仿IOS弹框~
- Android Study 之通过DialogFragment玩转高仿IOS弹框~ ^.^
- Android 高仿IOS底部Dialog对话框。
- Android_高仿ios左滑删除的(改进版)
- iOS高仿微信文章悬浮球功能
- 源码推荐(02.18B):高仿版QQ最新版,iOS离线缓存
- iOS开发之功能模块--高仿Boss直聘的常用语的开发
- 《React-Native系列》组件封装之Dialog(iOS和Android通用)
- iOS 高仿:花田小憩3.0.1
- iOS-高仿通讯录之商品索引排序搜索
- android 高仿IOS水滴版上下拉刷新的Listview
- 「iOS」高仿【少数派】客户端 代码+思路讲解
- iOS开发用Tableview实现能改变字体颜色的高仿系统的ActionSheet
- Android基础控件——EditText的自定义、高仿iOS的UITextField
- 高仿美团iOS版,版本号5.7
- Android 自定义View之仿IOS Dialog
- iOS 收集的高仿项目
- Android高仿path小球刷新效果,类似iOS果冻效果
- iOS高仿:花田小憩3.0.1