断断续续学安卓一个礼拜,发现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应用开发中,对话框(Dialog)是一种...通过这两种方式,我们可以灵活地在Android应用中创建一个具有定时自动关闭功能的等待对话框。这不仅能提升用户体验,还能保证应用在后台执行任务时保持界面的响应性。
在Android应用开发中,自定义退出提示弹出框是一个常见的需求,它可以帮助用户在退出应用时得到明确的提示,提高用户体验。本篇文章将详细讲解如何实现这样一个功能。 首先,我们来了解一下`Dialog`和`PopupWindow`...
本文将深入探讨如何实现Android蓝牙的自动配对功能,并且基于描述中的"无配对提示框"特性,我们将着重讨论如何在用户无感知的情况下完成这一过程。 首先,理解蓝牙自动配对的基础是熟悉Android的蓝牙API。Android...
`okButton`的点击事件也会关闭提示框。这样,我们就成功地模拟了Android风格的提示框。 总的来说,通过JavaScript和CSS的结合,我们可以创建一个具有Android风格的、更友好的提示框。这种方式不仅提供了更丰富的...
Android自动更新涉及到多个组件和技术,包括Google Play服务、APK安装流程、网络请求以及用户权限管理。下面我们将深入探讨这个主题。 首先,Android系统的自动更新主要依赖于Google Play商店。当开发者在Play ...
在Android开发中,用户体验是至关重要的,而动态错误提示效果是提升用户体验的一种有效方式。本文将深入探讨如何在Android应用中实现这样的功能,为用户提供友好的错误反馈。 首先,我们来理解“动态错误提示效果”...
在Android开发中,自定义弹出框(Dialog)是一个常用的功能,它允许开发者根据应用的UI风格和功能需求创建独特且交互性强的对话界面。本文将深入探讨如何在Android中自定义实现弹出框,主要关注`自定义Dialog`这一...
**Android之Fresco:Facebook的强大Android图片加载框架** 在Android应用开发中,图片加载和管理是一个常见的挑战。图片资源不仅占用大量内存,还可能导致UI卡顿,尤其是在处理大量或者高分辨率图片时。为了解决...
总结来说,实现Android自动开关机涉及到权限获取、BroadcastReceiver、AlarmManager、shell命令等技术,需要对Android系统有深入理解,特别是对于系统级别的操作。在开发过程中,确保安全性、用户友好性和兼容性是至...
3. **用户反馈**:为了改善用户体验,Recovery框架可能包含一个用户友好的界面,提示用户发生了什么问题,并请求他们发送错误报告。这样开发者可以收到第一手的用户反馈,加速问题排查。 4. **异常处理**:框架可能...
在Android开发中,`AutoCompleteTextView` 是一个非常实用的组件,它提供了自动补全功能,用户在输入时可以根据已有的数据集得到建议的匹配项,极大地提升了输入效率和用户体验。这个组件通常用于搜索框或者地址输入...
本篇将详细介绍如何在Android中取消蓝牙配对框并实现自动配对。 首先,我们需要了解Android蓝牙API的基本用法。Android提供了BluetoothAdapter类来管理系统的蓝牙功能,包括开启、关闭蓝牙,查找周边设备以及与设备...
还可以设置超时时间自动关闭: ```java SVProgressHUD.showWithDelay(this, 2000); // 延迟2秒后显示 SVProgressHUD.setDelayDismiss(5000); // 设置5秒后自动消失 ``` 6. **其他自定义**:SVProgressHUD还提供了...
6. **用户交互**:在实现记住密码和自动登录功能时,还需要提供相应的用户界面元素,如复选框供用户选择是否记住密码,以及相关的提示信息。 7. **权限管理**:对于保存和读取用户密码,可能需要请求存储权限。在...
自定义更新提示框和更新进度条可以提升用户体验,使其更加符合应用的整体风格,并且能够更好地控制更新过程。下面将详细讨论如何在Android中实现这个功能。 1. **检查新版本**: - 使用`HttpURLConnection`或`...
5. 如果你想让悬浮框跟随屏幕旋转等变化而自动调整位置,你需要监听配置更改并更新布局参数: ```java registerForContextMenu(floatView); floatView.setOnCreateContextMenuListener(new View....
##### (三) 显示更新提示框 使用`AlertDialog`构建一个对话框,提示用户有新版本可用,并提供“立即更新”和“稍后再说”的选项。 ##### (四) 下载新的APK文件 1. **创建下载对话框**:使用`ProgressDialog`显示...
在Android应用开发中,`Android Toast`是一种轻量级的提示机制,用于向用户显示简短的信息,通常在用户操作后出现并自动消失。标题提到的“Android Toast即便关闭了通知权限也会正常显示”是一个关键点,这涉及到...
LoonAndroid的自动更新模块可以检测新版本,提示用户进行升级,保证应用始终处于最新状态。 最后,一系列工具类的集成进一步增强了LoonAndroid的实用性,如日期时间处理、字符串操作、设备信息获取等,这些工具类为...