断断续续学安卓一个礼拜,发现Android对于Flex,在很多Widget的组件设计上还不是很人性化
经常以为应该具有的功能却不具备,而且Java GUI真的不是我的爱
比如AlertDialog的延时关闭,没有现成的方法或者组件,那么只能自己来扩展了
来吧,下面就是一个很勉强很勉强的装饰器模式
AutoCloseDialog
public class AutoCloseDialog{
private AlertDialog dialog;
private ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor();
public AutoCloseDialog(AlertDialog dialog){
this.dialog = dialog;
}
public void show(long duration){
//创建自动关闭任务
Runnable runner = new Runnable() {
@Override
public void run() {
dialog.dismiss();
}
};
//新建调度任务
executor.schedule(runner, duration, TimeUnit.MILLISECONDS);
dialog.show();
}
}
然后是演示代码
public class AlertExampleActivity extends Activity {
// 声明Button
private Button button;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
button = (Button) findViewById(R.id.button1);
AlertDialog.Builder builder = new AlertDialog.Builder(this);
final AlertDialog dialog = builder.setTitle("提示").setMessage(
"2秒后消失").create();
final AutoCloseDialog d = new AutoCloseDialog(dialog);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
d.show(2000);
}
});
}
}
layout就一个按钮,不用写出来了吧^_^
Best Regard to everybody!
分享到:
相关推荐
android:实现点击按钮,弹出“请稍候...(文本可以自定义)”对话框,加载完了之后,对话框自动消失,提供了两种定时消失的方案,可自行选择。
具体使用方法参考:http://blog.csdn.net/gaojinyu521748/article/details/37833305
讲解地址 http://blog.csdn.net/wingichoy/article/details/50477108
一款提示框,这种风格更像是手机Android上的风格,本代码演示了两种提示效果:一种是警告提示框,另一种是操作成功的提示,两者可同时弹出,以淡入淡出的方式渐变显示出来,3秒后自动关闭提示窗口,这个时间自己可...
Toast信息提示框之所以在显示一定时间后会自动关闭,是因为在系统中有一个Toast队列。系统会依次从队列中取(出队列)一个Toast,并显示它。在显示一段时间后,再关闭,然后再显示下一个Toast信息提示框。直到Toast...
----------------------------------- Android 编程基础 1 封面----------------------------------- Android 编程基础 2 开放手机联盟 --Open --Open --Open --Open Handset Handset Handset Handset Alliance ...
2.6.1 使用Toast显示提示信息框 128 2.6.2 Notification的功能与用法 129 2.7 菜单 132 2.7.1 选项菜单和子菜单 (SubMenu) 132 2.7.2 使用监听器来监听菜单事件 136 2.7.3 创建复选菜单项和单选菜单...
4.26 离开与关闭程序的弹出窗口——对话窗口上的ICON图标 第5章 交互式通信服务与手机控制 5.1 具有正则表达式的TextView——Linkify规则 5.2 ACTION!CALL!拨打电话——Intent.ACTION.CALL的使用 5.3 自制发送...
6. EditText 编辑框的提示信息可以使用 android:hint 属性。 7. 不是手机操作系统的是 Windows Vista。 二、填空题 1. Android 平台由操作系统、中间件、用户界面和应用软件组成。 2. Android 平台提供了 2D、3D ...
4.26 离开与关闭程序的弹出窗口——对话窗口上的ICON图标 第5章 交互式通信服务与手机控制 5.1 具有正则表达式的TextView——Linkify规则 5.2 ACTION!CALL!拨打电话——Intent.ACTION.CALL的使用 5.3 自制发送...
8. android:hint 是 EditText 编辑框的提示信息,可以在布局文件中使用 android:hint 属性来设置EditText 的提示信息。 9. gotoActivity 不是 Activity 启动的方法,Activity 的启动方法包括 startActivity 和 ...
4.26 离开与关闭程序的弹出窗口——对话窗口上的ICON图标 第5章 交互式通信服务与手机控制 5.1 具有正则表达式的TextView——Linkify规则 5.2 ACTION!CALL!拨打电话——Intent.ACTION.CALL的使用 5.3 自制发送...
4.26 离开与关闭程序的弹出窗口——对话窗口上的ICON图标 第5章 交互式通信服务与手机控制-p155 5.1 具有正则表达式的TextView——Linkify规则 5.2 ACTION!CALL!拨打电话——Intent.ACTION.CALL的使用 5.3 自制...
4.26 离开与关闭程序的弹出窗口——对话窗口上的ICON图标 第5章 交互式通信服务与手机控制 5.1 具有正则表达式的TextView——Linkify规则 5.2 ACTION!CALL!拨打电话——Intent.ACTION.CALL的使用 5.3 自制...