Android——非常好用、简单实用的通用dialog实现方法
2017-10-18 17:02
465 查看
Android中实现dialog的思路方法有很多,默认的、自定义的都有很多方法,每一次都得修修改改,如何偷懒呢?
难道就没有一种通用的dialog吗?
终于,不负众望,不辱使命……
还是先来效果图:
Step1:
创建fragment继承DialogFraagment,如果想点击,就自行实现方法即可;
Step 2:调用
搞定了,只需要替换布局文件就行了;
难道就没有一种通用的dialog吗?
终于,不负众望,不辱使命……
还是先来效果图:
Step1:
创建fragment继承DialogFraagment,如果想点击,就自行实现方法即可;
public class xxx extends DialogFragment implements View.OnClickListener{ @Override public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); } @NonNull @Override public Dialog onCreateDialog(Bundle savedInstanceState) { // 使用不带Theme的构造器, 获得的dialog边框距离屏幕仍有几毫米的缝隙。 Dialog dialog = new Dialog(getActivity(), R.style.BottomDialog); dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); // 设置Content前设定 dialog.setContentView(R.layout.xxx); dialog.setCanceledOnTouchOutside(true); // 外部点击取消 // 设置宽度为屏宽, 靠近屏幕底部。 final Window window = dialog.getWindow(); window.setWindowAnimations(R.style.AnimBottom); final WindowManager.LayoutParams lp = window.getAttributes(); lp.gravity = Gravity.BOTTOM; // 紧贴底部 lp.width = WindowManager.LayoutParams.MATCH_PARENT; // 宽度持平 lp.height = (int) (getActivity().getWindowManager().getDefaultDisplay().getHeight() * 0.67); window.setAttributes(lp); initView(dialog); return dialog; } private void initView(Dialog dialog) { ... } @Override public void onClick(View view) { } }
<style name="AnimBottom" parent="@android:style/Animation"> <item name="android:windowEnterAnimation">@anim/push_bottom_in</item> <item name="android:windowExitAnimation">@anim/push_bottom_out</item> </style> <!--底部弹框--> <style name="BottomDialog" parent="@style/AppTheme"> <item name="android:layout_width">match_parent</item> <item name="android:layout_height">wrap_content</item> <item name="android:windowIsFloating">true</item> <item name="android:backgroundDimEnabled">true</item> </style>
Step 2:调用
xxxFragment fragment=new xxxFragment();
fragment.show(getCurActivity().getSupportFragmentManager(),"xxxFragment");
搞定了,只需要替换布局文件就行了;
相关文章推荐
- Android自定义dialog简单实现方法
- Android 全局Dialog的简单实现方法
- 转载 Android简单实现ImageView的加边框颜色的方法
- android 实现时钟的简单方法
- android http-post方法简单实现
- Android简单实现更换桌面背景的方法
- Android简单涂鸦以及撤销、重做的实现方法
- android中图片翻页效果简单的实现方法
- Android反编译工具介绍与简单实用方法
- 用简单的方法,在android上实现手势放大缩小功能
- 【Android开发经验】利用反射机制,获取类的字段、方法、并实现简单调用
- Android Dialog对话框样式设定-最简单,万能有效方法
- 用最简单的方法去实现android中的一些提示
- Android 简单最实用的方式实现ViewPager无限循环两种方式
- android 通过回调实现 完全自定义Dialog 简单易用
- Android倒计时简单方法实现
- 非常简单的实现LINQ通用分页绑定方法
- Asp.net验证码实现的方法,简单实用。
- android http-post方法简单实现
- Android 去掉自定义dialog的白色边框的简单方法