在Android开发中,会经常用到AlertDialog,创建的方法有很多种方式,下面从Builder直接显示来说明一些有趣的事情,下面的代码想显示一个单选AlertDialog:
Builder builder = new AlertDialog.Builder(this);
builder.setTitle("标题");
builder.setMessage("内容");
builder.setSingleChoiceItems(new String[]{"选项 A", "选项 B", "选项 C", "选项 D"}, 0, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Log.i(getClass().getName(), "{witch = " + which + "}");
}
});
builder.show();
运行后的如图:
产生这个问题的表面原因是setMessage和setSingleChoiceItems都被调用了,而根本原因只要参照其AlertDialog$Builder的源码就可以找到!
单独调用后的效果一切就正常了,效果如下:
如果通过Builder获得AlertDialog引用,然后对AlertDialog再做一些显示操作,还会发现一些有趣的效果!:)
- 大小: 6.9 KB
- 大小: 7.7 KB
- 大小: 14.5 KB
分享到:
相关推荐
此外,不同的Android版本可能对创建和连接WiFi热点的API有所调整,因此开发时应考虑兼容性问题。 `AndroidSpotDemo`这个项目很可能是包含了以上功能的示例代码,包括界面交互、事件处理和逻辑控制。开发者可以通过...
我们经常会需要在Android界面上弹出一些对话框 比如询问用户或者让用户选择 关于Android Dialog的使用方法 已经有很多blog做出了详细的介绍(比如博客:7种形式的Android Dialog使用举例) 但是只是给出了创建各种...
在Android平台上,开发人员经常需要处理文件操作,例如创建、读取、修改或删除文本文件。这个场景中,我们关注的重点是如何在Android应用中创建并保存一个TXT文件。以下是实现这一功能的关键知识点: 1. **权限申请...
在Android开发中,串口通信(Serial Port Communication)是一种重要的技术,它允许设备之间通过串行接口进行数据交换。...通过实践和调试,开发者可以创建出能够有效与外部硬件交互的Android应用。
在创建图标时,需要提供所有这些尺寸,以确保在不同设备上显示效果良好。 在实际开发中,Android Studio提供了一个名为`Android Asset Studio`的工具,可以帮助开发者快速生成符合规范的图标。只需上传自定义图像或...
在现代的移动应用开发中,JavaScript与原生平台之间的交互变得越来越常见,特别是在使用Android的WebView组件时。本文将深入探讨如何使用JavaScript调用Android的方法,并传递JSON数据,以实现两者之间的高效通信。 ...
- 考虑到性能,当用户切换音乐时,最好先释放旧的`MediaPlayer`实例,再创建新的实例。 通过以上步骤,我们就能成功地在Android应用中设置背景音乐,并让用户可以从SD卡中自由选择。这种功能增强了应用的互动性和...
在Android系统中,为应用程序创建桌面快捷方式是提高用户体验的重要方式之一。用户可以通过快捷方式轻松访问常用功能,而无需每次都打开整个应用。本教程将详细解释如何通过源代码实现这一功能,同时也参考了名为...
在Android中,我们可以使用`Shape Drawable`来创建虚线。首先创建一个XML文件,比如`line_style.xml`,放在`res/drawable`目录下: ```xml <shape xmlns:android="http://schemas.android.com/apk/res/android"> ...
"Android动画之仿美团加载数据等待时小人奔跑进度动画程序源码"是一个示例项目,它展示了如何创建一个类似美团加载数据时显示的小人奔跑动画。这个动画在用户等待数据加载时提供了一种有趣的视觉反馈,让用户感觉...
"android检测U盘插拔事件"这个标题揭示了我们要探讨的核心技术点:如何在Android应用中监听并处理U盘的插入和移除操作。描述中提到的"工程里面有俩包,分别用了两种方法检测U盘热插拔",暗示我们有两种不同的实现...
【Android项目实战--手机卫士完整源码part1】是一个针对Android平台的实践项目,旨在帮助开发者学习如何构建一个功能齐全的手机安全应用。这个项目包括了多个关键模块的源码,涵盖了手机卫士的核心功能,如电话拦截...
这篇内容将深入探讨如何在Android中创建一个自定义日期选择器,并通过源码分析来增强我们的理解。 首先,我们要明白自定义日期选择器的基本结构。通常,它会包含一个日历视图,让用户可以选择年、月、日,有时还...
在Android平台上,生成PDF文档是常见的需求,尤其是在开发企业级应用时。iText是一个流行的Java库,用于创建和处理PDF文档。然而,由于版权和字符集...记住,处理字体和编码问题时要小心,以确保所有字符都能正确显示。
自Android 6.0(API级别23)开始,运行时权限成为必须处理的问题,你需要学习如何在应用中请求和处理用户权限。 最后,了解如何使用Android Studio进行调试和测试,包括使用Logcat查看日志、使用JUnit或Espresso...
1. **Android Studio入门**:首先,你需要了解Android Studio的基本操作,包括创建新项目、项目结构、布局设计、代码编写以及调试工具的使用。Android Studio提供了一个基于Gradle的构建系统,你需要理解Gradle脚本...
在Android开发中,Preference是构建用户界面的一种重要方式,它主要用于创建设置界面,提供开关、选择列表、输入框等常用控件。Preference类是Android框架的一部分,它简化了UI元素的创建和管理,使得开发者可以方便...
在Android 6.0(API 23)及以上版本,需要在运行时请求`android.permission.KILL_BACKGROUND_PROCESSES`权限,因为这是一个危险权限。 最后,为了优化用户体验,我们可以考虑添加其他功能,如定期清理、清理历史...
1. 异常处理:在发送请求和解析响应时,要处理可能的网络错误和解析错误,确保程序的健壮性。 2. 安全性:避免在客户端代码中暴露敏感信息,如数据库连接字符串。使用HTTPS加密通信,防止数据被窃取。同时,对用户...
开发者需要在Manifest文件中声明所需的权限,并在运行时根据Android版本获取用户的许可。 12. **通知(Notification)**:通知是向用户展示重要信息的方式,即使应用不在前台运行。通过NotificationManager和...