一个android的dialog框架
2017-01-11 09:55
369 查看
AndroidSuperDialog
基于DialogFragment封装,支持自定义边框圆角、背景透明度、字体大小与色值等。 列表选择框可以接收
List与
Arrays的数据源,。 初衷是掌握知识点,此库不一定适合你的产品整体风格,当然能够适合你的项目最好不过,有建议和不足之处欢迎骚扰,话不多说先上图。
android studio中
引入
compile 'com.mylhyl:superDialog:1.0.11'
使用
简单的对话框new SuperDialog.Builder(this).setRadius(10) .setAlpha(0.5f) .setTitle("标题").setMessage("可以看到?") .setPositiveButton("确定", new SuperDialog.OnClickPositiveListener() { @Override public void onClick(View v) { Toast.makeText(v.getContext(), "点了确定", Toast.LENGTH_LONG).show(); } }).build();选择对话框
//final String[] strings = {"拍照", "从相册选择", "小视频"}; List<People> list = new ArrayList<>(); list.add(new People(1,"拍照")); list.add(new People(2,"从相册选择")); list.add(new People(3,"小视频")); new SuperDialog.Builder(this) //.setAlpha(0.5f) //.setGravity(Gravity.CENTER) //.setTitle("上传头像", ColorRes.negativeButton) .setCanceledOnTouchOutside(false) .setItems(list, new SuperDialog.OnItemClickListener() { @Override public void onItemClick(int position) { Toast.makeText(MainActivity.this, strings[position], Toast.LENGTH_LONG).show(); } }) .setNegativeButton("取消", null) .build();宽度
setWidth(@FloatRange(from = 0.0, to = 1.0) float width)
边距
setPadding(int left, int top, int right, int bottom)
动画
setWindowAnimations(int animStyle)
列表框距离下方按钮的间距
setItemsBottomMargin(int bottomMargin)
指定位置显示
setShowAtLocation(int gravity, int x, int y)
设置背景是否昏暗
setDimEnabled(boolean dimEnabled)
setConfigDialog更多使用
.setConfigDialog(new SuperDialog.ConfigDialog() { @Override public void onConfig(Dialog dialog, Window window, WindowManager .LayoutParams wlp, DisplayMetrics dm) { window.setWindowAnimations(R.style.dialogWindowAnim);//动画 wlp.y = 100;//底部距离 } })
说明
* 此库自动将px转换百分比,由于 Dialog 布局一般只有微调,暂时只支持textSize,height,padding * 默认字体大小;Title、message、button、padding 的px在设计稿为 1080 * 1920 的尺寸 * 所以使用时设计稿尺寸一定是1080 * 1920github地址:https://github.com/mylhyl/AndroidSuperDialog
相关文章推荐
- 你真的会用Android的Dialog吗?由一个Exception想到的
- [转]Android 游戏框架(一个游戏角色在屏幕行走的demo)
- 用.Net打造一个移动客户端(Android/IOS)的服务端框架NHM(四)——Android端Http访问类
- 用lGame(3.0)框架在android平台上开发一个经典游戏Tetris (将会有LGame与Android的对比呦)第一篇
- 你真的会用Android的Dialog吗?由一个Exception想到的
- 介绍一个android开源文件选择对话框:android-file-dialog
- 用.Net打造一个移动客户端(Android/IOS)的服务端框架NHM(二)——“请求”“交互”与传输数据(服务器端)
- 用.Net打造一个移动客户端(Android/IOS)的服务端框架NHM(一)
- 你真的会用Android的Dialog吗?由一个Exception想到的
- [Android] - 对话框的小框架 Managed-Dialog
- 【Android游戏开发之四】Android 游戏框架(一个游戏角色在屏幕行走的demo)
- 【Android游戏开发之四】Android 游戏框架(一个游戏角色在屏幕行走的demo)
- 用.Net打造一个移动客户端(Android/IOS)的服务端框架NHM(三)——搭建Android开发环境,用Hibernate生成Android项目的Model层
- 你真的会用Android的Dialog吗?由一个Exception想到的
- 【Android游戏开发之四】Android 游戏框架(一个游戏角色在屏幕行走的demo)
- 【Android游戏开发之四】Android 游戏框架(一个游戏角色在屏幕行走的demo)
- 一个Android小框架
- android轻量框架_各种Dialog
- 一个Android异步调用的简单框架
- Android是一个应用框架,而不是类别库