Android仿IOS底部弹出对话框
在android开发过程中,常常会因为感觉android自带的dialog的样式很丑,项目开发过程中会影响整体效果,会使得开发过程很是忧伤....(话唠时间结束!)
本文我将介绍一款开源的dialog仿ios底部弹窗效果ios_dialog_library的使用。我将通过几个简单的示例介绍ios_dialog_library.zip的使用方法。
1、ios_dialog_library是开源的dialog框架,所以首先你得下载ios_dialog_library.zip包,并作为library引入你的项目(引入过程省略)。
ios_dialog_library下载地址:http://xiazai.jb51.net/201701/yuanma/iosdialoglibrary(jb51.net).rar
2、在创建完项目和引用完 ios_dialog_library.zip 之后,开始编写代码。
activity_main.xml
<linearlayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".mainactivity" android:orientation="vertical"> <button android:id="@+id/btn1" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="消息" /> <button android:id="@+id/btn2" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="图片" /> <button android:id="@+id/btn3" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="列表item" /> <button android:id="@+id/btn4" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="退出 弹窗" /> <button android:id="@+id/btn5" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="错误提示窗口" /> </linearlayout>
上面主要是5个button,即演示五种不同的ios_dialog_library的使用方法。
mainactivity.java
package example.com.showdialog; import android.app.activity; import android.os.bundle; import android.view.view; import android.widget.button; import zhangphil.iosdialog.widget.actionsheetdialog; import zhangphil.iosdialog.widget.alertdialog; /** * package:example.com.showdialog * name:mainactivity.java * write by jimmy.li * date:2016/4/24 16:39 */ public class mainactivity extends activity implements view.onclicklistener { private button btn1, btn2, btn3, btn4, btn5; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); initview(); } private void initview() { btn1 = (button) findviewbyid(r.id.btn1); btn2 = (button) findviewbyid(r.id.btn2); btn3 = (button) findviewbyid(r.id.btn3); btn4 = (button) findviewbyid(r.id.btn4); btn5 = (button) findviewbyid(r.id.btn5); btn1.setonclicklistener(this); btn2.setonclicklistener(this); btn3.setonclicklistener(this); btn4.setonclicklistener(this); btn5.setonclicklistener(this); } @override public void onclick(view v) { switch (v.getid()) { case r.id.btn1: new actionsheetdialog(mainactivity.this) .builder() .settitle("清空消息列表后,聊天记录依然保留,确定要清空消息列表?") .setcancelable(true) .setcanceledontouchoutside(true) .addsheetitem("清空消息列表", actionsheetdialog.sheetitemcolor.red , new actionsheetdialog.onsheetitemclicklistener() { @override public void onclick(int which) { //填写事件 } }).show(); break; case r.id.btn2: new actionsheetdialog(mainactivity.this) .builder() .setcancelable(true) .setcanceledontouchoutside(true) .addsheetitem("发送给好友", actionsheetdialog.sheetitemcolor.blue, new actionsheetdialog.onsheetitemclicklistener() { @override public void onclick(int which) { //填写事件 } }) .addsheetitem("转载到空间相册", actionsheetdialog.sheetitemcolor.blue, new actionsheetdialog.onsheetitemclicklistener() { @override public void onclick(int which) { //填写事件 } }) .addsheetitem("上传到群相册", actionsheetdialog.sheetitemcolor.blue, new actionsheetdialog.onsheetitemclicklistener() { @override public void onclick(int which) { //填写事件 } }) .addsheetitem("保存到手机", actionsheetdialog.sheetitemcolor.blue, new actionsheetdialog.onsheetitemclicklistener() { @override public void onclick(int which) { //填写事件 } }).show(); break; case r.id.btn3: new actionsheetdialog(mainactivity.this) .builder() .settitle("好友列表") .setcancelable(true) .setcanceledontouchoutside(true) .addsheetitem("删除好友", actionsheetdialog.sheetitemcolor.red , new actionsheetdialog.onsheetitemclicklistener() { @override public void onclick(int which) { //填写事件 } }) .addsheetitem("增加好友", actionsheetdialog.sheetitemcolor.blue , new actionsheetdialog.onsheetitemclicklistener() { @override public void onclick(int which) { //填写事件 } }) .addsheetitem("备注", actionsheetdialog.sheetitemcolor.blue , new actionsheetdialog.onsheetitemclicklistener() { @override public void onclick(int which) { //填写事件 } }).show(); break; case r.id.btn4: new alertdialog(mainactivity.this) .builder() .settitle("退出当前帐号") .setmsg("再连续登陆天,就可变身为qq达人。退出qq可能会使你现有记录归零,确定退出?") .setpositivebutton("确认退出", new view.onclicklistener() { @override public void onclick(view v) { //填写事件 } }) .setnegativebutton("取消", new view.onclicklistener() { @override public void onclick(view v) { //填写事件 } }).show(); break; case r.id.btn5: new alertdialog(mainactivity.this) .builder() .settitle("错误信息") .setmsg("你的手机sd卡出现问题,建议删除不需要的文件,否则收不到图片和视频等打文件") .setpositivebutton("确定", new view.onclicklistener() { @override public void onclick(view v) { //填写事件 } }).show(); break; } } }
java代码主要是简要的说明了ios_dialog_library的五种不同的实现方法及效果。可以在注释部分写点击事件。
3、运行效果图
运行效果图1 点击"消息"示意图2
点击"图片"效果图3 点击"列表item"效果图4
点击"退出弹窗"效果图5 点击"错误提示窗口"图6
源码下载地址:http://xiazai.jb51.net/201701/yuanma/androidshowdialog(jb51.net).rar
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。