Android 对话框、信息提示和菜单

对话框

标准对话框显示按钮的方法

标准对话框最多 3 个按钮。具体可查看 AlertDialog 源码。

响应标准对话框的按钮单击事件

使用 DialogInterface.OnClickListener() 方法响应标准对话框点击事件。

在对话框中显示一个列表

使用 AlertDialog.Builder.setItems 方法可以将一个 String 数组以列表形式显示在对话框中。

进度条对话框的使用方法

类 ProgressDialog. 具体可查看官方API或搜索

在标准对话框中任意放置可视组件

AlertDialog.Builder.setView 方法可以在对话框上显示一个 View, 可以用 Java 代码进行绘制,也可以从布局文件装载。

在 Android 中显示对话框的方式

- 1 直接使用 AlertDialog

- 2 把 Activity 当成 Dialog 使用

- 3 Activity.showDialog 方法显示对话框

设置对话框的位置

使用 setGravity 方法。具体是先要用一个 Window window = alertDialog.getWindow(); window.setGravity();

改变对话框透明度

通过设置 window 的 alpha 属性可以改变。

信息提示

Toast 信息框

- 除了显示文字,toast 还可以显示图像(setView)

- Toast.show() 方法并不是让其显示,而是让这个 Toast 进入系统的 Toast 队列

通知 Notification

创建步骤

- 1 通过 getSystemService 方法获得一个 NotificationManager 对象

- 2 创建一个 Notification 对象

- 3 创建一个 PendingIntent 对象。

- 4 使用 Notification 类的 setLatestEventInfo 方法设置 Notification 的详细信息

- 5 使用 NotificationManager 类的 notify 方法显示 Notification 消息

Notification 的单击事件处理

使用PendingIntent.getActivity 方法获取一个 PendingIntent 对象,并将 PendingIntent 对象传入 setLatestEventInfo 方法的最后一个参数。

Tips:发送广播 PendingIntent.getBroadcast 开始服务:PendingIntent.getService()。

从状态栏清除 Notification

使用 NotificationManager.cancel 方法可以清除单一一个,参数是 ID。 cancelAll 清除全部,Ps:当前 Mainager 对象中的全部。

让 Notification 永久存在

设置 Notification 的 flags 属性为 Notification.FLAG_ONGOING_EVENT,能让其永久存在。

自定义 Notification 和其支持的组件

只需要设置 Notification.contentView 变量(需要一个 RemoteViews 对象)

支持的布局:FrameLayout LinearLayout RelativeLayout

支持的组件:AnalogClock Button Chronometer ImageButton ImageView ProgressBar TextView

菜单

Android 支持哪几种菜单

选项菜单 上下文菜单 子菜单

可显示图像的菜单

选项菜单可以显示,上下文和子菜单的菜单头可以显示。但菜单项不能显示图像

如何为 Activity 添加选项菜单

Activity.onCreateOptionsMenu 方法中,使用 Menu 对象添加菜单。

响应菜单项单击事件的方法

onMenuItemClick

onOptionsItemSelected

onMenuItemSelected

个人注解

因为目前在实际项目之中菜单已经用的越来越少,况且自定义 View 和其他自定义 View 样式差不多。

所以这里不再对菜单进行过多的说明,如果到时候需要使用,可以去查阅官方文档和API。

android菜单对话框文字,Android 对话框、信息提示和菜单相关推荐

  1. android 广播 关闭对话框,Android 对话框、信息提示和菜单

    Android 对话框.信息提示和菜单 对话框 标准对话框显示按钮的方法 标准对话框最多 3 个按钮.具体可查看 AlertDialog 源码. 响应标准对话框的按钮单击事件 使用 DialogInt ...

  2. Android SnackBar:你值得拥有的信息提示控件

    概述: Snackbar提供了一个介于Toast和AlertDialog之间轻量级控件,它可以很方便的提供消息的提示和动作反馈. 有时我们想这样一种控件,我们想他可以想Toast一样显示完成便可以消失 ...

  3. android 动态改变文字,android – 如何动态设置文本到TextView?

    我想在活动开始时显示连接的ssid和ip地址.它包含一个图像视图(用于标题,因为我没有使用操作栏)和4个文本视图(ssid标签,ssid值,ipaddr标签和ipaddr值) 我已经测试了获取ssid ...

  4. android 实现 3d 文字,android 3d 游戏 开发 基础 第10课-2D文字显示.ppt

    <android 3d 游戏 开发 基础 第10课-2D文字显示.ppt>由会员分享,可在线阅读,更多相关<android 3d 游戏 开发 基础 第10课-2D文字显示.ppt(1 ...

  5. android 横向竖排文字,[Android]实现文字竖排

    最终效果:文字竖排,英文字母是横着的,中文字是竖的,如下图 竖排中英混合.PNG 分析:英文是一个完整的单词旋转了90度,中文一字一行 思路: 要放textview的地方用LinearLayout占位 ...

  6. android 横向竖排文字,Android TextView 横排文字变竖排的简单方法

    /* * 功能:多行横排文本转换为多列直排(以换行符 \n 作为断行标记) * 说明:可支持1-N行,但要求有换行标记符,或稍作修改以标点符号换行 * @author: 云冰工作室 yunbing.c ...

  7. html中列表菜单加文字请选择,html中下拉菜单

    HTML中的下拉列表:Html代码<select><optionvalue="1">Volvo</option><optionvalue= ...

  8. android菜单和对话栏,Android回顾--(十一) 菜单和对话框

    选择菜单(OptionsMenu) 第一种使用方式: 在res目录下面建立一个名称是menu的文件夹 在menu下面建立一个xml文件(默认就是menu的类型) 在建立的这个xml文件夹中添加菜单的选 ...

  9. android中可口的吐司,一种信息提示机制——Toast

    这篇文章是我发表在eoeandroid论坛上的帖子,今天也来这里和园友们分享一下,希望对大家有所帮助-  原帖子地址: http://www.eoeandroid.com/thread-34700-1 ...

  10. Android实现自定义各类Dialog对话框和样式美化(含Toast)

    背景 基本上每个APP中都会使用到Toast和Dialog,但多数时候我们有自定义样式.功能的需求,例如Toast需要做单例形式.Dialog需要调整样式等.本文中涉及的自定义效果演示如下: 思路 T ...

最新文章

  1. mybatis mysql 配置文件_Mybatis配置文件详解(4)
  2. 如何用12864液晶显示图片和绘制任意函数图象(打点)
  3. AgilePoint商业流程管理平台
  4. <马哲>商品二因素及其辩证关系2017-12-27
  5. eclipse黑色主题
  6. WPF案例 (六) 动态切换UI布局
  7. oracle是delete可以加并行吗,提高Oracle DELETE性能的策略
  8. tornado web mysql_Tornado WEB服务器框架 Epoll-- 【Mysql数据库】
  9. Pycharm同步代码到Github 踩坑
  10. 十代主板改win7_英特尔10代CPU完美装win7|新主板新CPU装win7 Bios设置
  11. .Net 发送邮件
  12. 2018深信服笔试-抓兔子 DP
  13. 数据标注员需要专业系统的学习么?
  14. Unity - 搬砖日志 - 打开项目时崩溃/或是运行不起unity的日志
  15. 1015-计算并联电阻的阻值
  16. 模拟电子技术 半导体基本知识 个人笔记
  17. docker-Login 报错 Error response from daemon
  18. 模型评估方法(混淆矩阵)
  19. 【Nginx-利用Referer防盗链】解决网站被可疑链接调取接口
  20. tcp/ip协议知识详解

热门文章

  1. oracle 绑定变量语法,Delphi使用绑定变量法操作Oracle
  2. 刘润老师的5分钟商学院营销案例~比例偏见!
  3. 非平衡电桥电阻计算_用非平衡电桥测量电阻
  4. Java初级程序员面试总结(二) --HashMap篇
  5. 计算机主板vga损坏,主板常见故障维修思路 集成显卡(VGA) -电脑资料
  6. 微信平台h5开发问题总结
  7. php在线编辑cad,cad形文件编辑器下载
  8. 保姆级解决办法使用企业版MyEclipse出现MyEclipse Trial Expired解决方法及激活
  9. 百度api实现实时摄像头人脸识别
  10. 基于机器学习的电信套餐个性化推荐模型的设计与实现