`
wangleyiang
  • 浏览: 220277 次
社区版块
存档分类
最新评论

Android 创建AlertDislog时要小心哦

阅读更多

        在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和创建WIFI热点 demo

    此外,不同的Android版本可能对创建和连接WiFi热点的API有所调整,因此开发时应考虑兼容性问题。 `AndroidSpotDemo`这个项目很可能是包含了以上功能的示例代码,包括界面交互、事件处理和逻辑控制。开发者可以通过...

    各种Android Dialog创建及其监听事件实现

    我们经常会需要在Android界面上弹出一些对话框 比如询问用户或者让用户选择 关于Android Dialog的使用方法 已经有很多blog做出了详细的介绍(比如博客:7种形式的Android Dialog使用举例) 但是只是给出了创建各种...

    android 保存创建Txt文件 代码程序

    在Android平台上,开发人员经常需要处理文件操作,例如创建、读取、修改或删除文本文件。这个场景中,我们关注的重点是如何在Android应用中创建并保存一个TXT文件。以下是实现这一功能的关键知识点: 1. **权限申请...

    android自定义时长Toast

    在Android开发中,Toast是一种轻量级的通知方式,它用于显示短暂的信息,通常用来提示用户...在进行自定义Toast开发时,一定要确保对Android的UI组件和生命周期有深入的理解,这将有助于你编写出更加高效和美观的代码。

    Android串口通信(Android Studio)

    在Android开发中,串口通信(Serial Port Communication)是一种重要的技术,它允许设备之间通过串行接口进行数据交换。...通过实践和调试,开发者可以创建出能够有效与外部硬件交互的Android应用。

    android菜单icon图标

    在创建图标时,需要提供所有这些尺寸,以确保在不同设备上显示效果良好。 在实际开发中,Android Studio提供了一个名为`Android Asset Studio`的工具,可以帮助开发者快速生成符合规范的图标。只需上传自定义图像或...

    Android App 启动时显示正在加载图片

    在Android应用开发中,"Android App 启动时显示正在加载图片"是一个常见的用户体验优化策略。这个过程通常称为启动画面或者加载屏幕,它的目的是在应用程序的实际内容加载完成之前,为用户提供一个平滑的过渡,避免...

    android创建wifi热点,手机之间可以互相通信.

    好东西来了啊,.完整的一套Android通过创建wifi热点,使手机之间可以互相连接,然后获取彼此的ip地址,用socket达到手机之间通信,聊天,发图片,发送文件,不要嫌分多,因为是好东西,.物有所值。

    JS调用Android方法,向Android方法传递json数据

    在现代的移动应用开发中,JavaScript与原生平台之间的交互变得越来越常见,特别是在使用Android的WebView组件时。本文将深入探讨如何使用JavaScript调用Android的方法,并传递JSON数据,以实现两者之间的高效通信。 ...

    android向桌面添加快捷方式

    在Android系统中,为应用程序创建桌面快捷方式是提高用户体验的重要方式之一。用户可以通过快捷方式轻松访问常用功能,而无需每次都打开整个应用。本教程将详细解释如何通过源代码实现这一功能,同时也参考了名为...

    Android动画之仿美团加载数据等待时小人奔跑进度动画 程序源码

    "Android动画之仿美团加载数据等待时小人奔跑进度动画程序源码"是一个示例项目,它展示了如何创建一个类似美团加载数据时显示的小人奔跑动画。这个动画在用户等待数据加载时提供了一种有趣的视觉反馈,让用户感觉...

    android检测U盘插拔事件

    "android检测U盘插拔事件"这个标题揭示了我们要探讨的核心技术点:如何在Android应用中监听并处理U盘的插入和移除操作。描述中提到的"工程里面有俩包,分别用了两种方法检测U盘热插拔",暗示我们有两种不同的实现...

    Android项目实战--手机卫士完整源码part1

    【Android项目实战--手机卫士完整源码part1】是一个针对Android平台的实践项目,旨在帮助开发者学习如何构建一个功能齐全的手机安全应用。这个项目包括了多个关键模块的源码,涵盖了手机卫士的核心功能,如电话拦截...

    Android自定义日期选择器源码

    这篇内容将深入探讨如何在Android中创建一个自定义日期选择器,并通过源码分析来增强我们的理解。 首先,我们要明白自定义日期选择器的基本结构。通常,它会包含一个日历视图,让用户可以选择年、月、日,有时还...

    Android用itext库生成中文PDF文档

    在Android平台上,生成PDF文档是常见的需求,尤其是在开发企业级应用时。iText是一个流行的Java库,用于创建和处理PDF文档。然而,由于版权和字符集...记住,处理字体和编码问题时要小心,以确保所有字符都能正确显示。

    Android开发入门60个小案例+源代码

    自Android 6.0(API级别23)开始,运行时权限成为必须处理的问题,你需要学习如何在应用中请求和处理用户权限。 最后,了解如何使用Android Studio进行调试和测试,包括使用Logcat查看日志、使用JUnit或Espresso...

    Android扫雷游戏(基于Android Studio)

    1. **Android Studio入门**:首先,你需要了解Android Studio的基本操作,包括创建新项目、项目结构、布局设计、代码编写以及调试工具的使用。Android Studio提供了一个基于Gradle的构建系统,你需要理解Gradle脚本...

    Android应用程序启动时背景画面的切换

    在Android开发中,当应用程序启动时,用户通常会看到一个过渡背景画面,这被称为启动屏幕或启动主题。这个过程涉及到Android应用程序的UI设计、主题应用以及活动(Activity)的生命周期管理。下面我们将深入探讨如何...

    Android本机定时推送通知Demo

    在这里,我们创建一个Intent,指定要启动的Activity,然后将它封装进PendingIntent,确保用户点击通知后,能够跳转到指定的Activity。 7. **Activity**: Activity是Android应用的基本组件,代表一个可视化的用户...

Global site tag (gtag.js) - Google Analytics