Android(安卓)自动关闭的提示框
16lz
2021-01-24
断断续续学安卓一个礼拜,发现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() {@Overridepublic void run() {dialog.dismiss();}};//新建调度任务executor.schedule(runner, duration, TimeUnit.MILLISECONDS);dialog.show();}}
然后是演示代码
public class AlertExampleActivity extends Activity {// 声明Buttonprivate Button button;@Overridepublic 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() {@Overridepublic void onClick(View v) {d.show(2000);}});}}
layout就一个按钮,不用写出来了吧^_^
Best Regard to everybody!
更多相关文章
- Android中ContentProvider组件详解 .(查找sd卡上的歌曲和联系人)
- Android应用配置文件解析
- Android开发 了解android系统的架构
- 【Android读书笔记】Android如何知道Intent要做什么
- android 霓虹灯效果
- Application Fundamentals--Intent 过滤器
- Android(安卓)Acrchitecture Components( 架构组件)+热门框架(Re
- Android四大组件之服务
- android页面跳转的几种方式