在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...
在Android开发中,当应用程序启动时,用户通常会看到一个过渡背景画面,这被称为启动屏幕或启动主题。这个过程涉及到Android应用程序的UI设计、主题应用以及活动(Activity)的生命周期管理。下面我们将深入探讨如何...
在这里,我们创建一个Intent,指定要启动的Activity,然后将它封装进PendingIntent,确保用户点击通知后,能够跳转到指定的Activity。 7. **Activity**: Activity是Android应用的基本组件,代表一个可视化的用户...
在Android开发中,Preference是构建用户界面的一种重要方式,它主要用于创建设置界面,提供开关、选择列表、输入框等常用控件。Preference类是Android框架的一部分,它简化了UI元素的创建和管理,使得开发者可以方便...
在Android 6.0(API 23)及以上版本,需要在运行时请求`android.permission.KILL_BACKGROUND_PROCESSES`权限,因为这是一个危险权限。 最后,为了优化用户体验,我们可以考虑添加其他功能,如定期清理、清理历史...
在布局文件中,为ImageView添加`android:translationZ`属性,设置一个非零值,例如`android:translationZ="4dp"`,这样可以使图片在翻转时产生深度感。 此外,如果想要更复杂的翻转效果,例如在不同的轴线上翻转或...