android alertdialog_Android通知形式 Toast、Notification、Dialog对话框

通知系统

1.Toast

弹出形式: 界面的下半部分 弹出一段时间后自动消失

不会因为界面关闭而消失 不会响应用户事件

应用场景: 提示不需要用户响应的信息 eg:双击退出

e

实现

//得到通知对象 (1.上下文对象 2.内容 3.时长)

Toast.LENGTH_LONG :3.5s Toast.LENGTH_SHORT:2s

Toast toast = Toast.makeText(this, "再次点击,退出应用!", Toast.LENGTH_LONG);

//显示通知

toast.show();

另一种写法:

Toast.makeText(this, "再次点击,退出应用!", Toast.LENGTH_LONG).show();

Notification 状态栏上的通知

形式:显示在状态栏上 显示提示信息 点击跳转到 详情界面

下拉显示详细内容

应用场景:全局通知

eg:短信提醒 歌曲播放歌曲通知

2.3 API

实现步骤:

//1.获得通知管理器对象

manager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);

//3.设置通知上升信息(参数1.上升动画 2.提示信息 3.系统时间)

Notification notification=new Notification(R.drawable.ic_launcher, "10086通知来了!", System.currentTimeMillis());

//7.设置点击通知自动消失的标志位

notification.flags=Notification.FLAG_AUTO_CANCEL;

//6.意图 设置点击通知跳转的方向(界面)

Intent intent=new Intent(this, MainActivity.class);

//5.延时意图

PendingIntent contentIntent=PendingIntent.getActivity(this, 0, intent, 0);

//4.设置下拉信息(1.上下文对象2.标题3.详细内容4.延时意图)

notification.setLatestEventInfo(this, "详细内容标题 10086", "内容欠费 100元", contentIntent);

//2.发送通知

manager.notify(1, notification);

//取消通知

manager.cancel(1);

Dialog 对话框

弹出形式:

在界面的正中央 ,打断用户的操作

应用场景: 需要立即用户做出响应 eg: 检查更新 双击退出

警告对话框AlertDialog

实现步骤:

//1.获得对话框辅助类 建造者模式

AlertDialog.Builder builder = new AlertDialog.Builder(this);

//2.设置标题

builder.setTitle("检查更新")

//3.设置内容

.setMessage("1.解决了XXXBug 2.新增了XXX功能")

//4.设置图标

.setIcon(R.drawable.ic_launcher)

//5.设置积极按钮

.setPositiveButton("确定", new OnClickListener() {

@Override

public void onClick(DialogInterface dialog, int which) {

Toast.makeText(MainActivity.this, "开始下载新版本", Toast.LENGTH_SHORT).show();

}

})

.setNegativeButton("取消", null)//消极按钮

.setNeutralButton("中立按钮", null)//中立按钮

.show();

//获得对话框对象 弹出方式二

// AlertDialog create = builder.create();

// create.show();

shift+alt+l (快速封装局部) shift+alt+M (快速封装方法)

菜单系统

选项菜单OptionMenu

应用必有的功能,但一又不是经常使用

创建菜单的方式一:xml中创建

1.重写onCreateOptionsMenu

2添加菜单文件.xml

添加菜单

android:id="@+id/action_settings" //菜单Id

android:orderInCategory="80" //菜单显示顺序

android:showAsAction="ifRoom"

android:/>//设置内容

ifRoom:如果有空间就显示在 ActionBar

always:总是显示在ActionBar

never:总是不显示在ActionBar

菜单点击事件

重写onOptionsItemSelected()

//1.获得Item的ID

int itemId = item.getItemId();

switch (itemId) {

case R.id.action_settings:

Toast.makeText(this, "设置", Toast.LENGTH_SHORT).show();

break;

填菜单的方式二:代码中添加菜单 点击事件一样

//添加子菜单

SubMenu subMenu = menu.addSubMenu("子菜单");

subMenu.addSubMenu(0, 3, 0, "设置1");

subMenu.addSubMenu(0, 4, 0, "设置1");

contextMenu 上下文菜单

形式:长按控件弹出上下文菜单

1. //为控件设置上下文菜单事件

registerForContextMenu(mTv1);

2.添加菜单

重写onCreateContextMenu(0

3.菜单点击事件

选项菜单跟上下文菜单的区别

选项菜单 上下文菜单

1.弹出方式 按Menu 长按控件

2.显示位置 界面中间

3.作用区域 Activity 控件本身

4.退出方式 重按Menu键 重按back

重按back 重按本身

重按本身 重按上下文菜单以外的区域

重按选项菜单以外的区域

5.创建次数 界面存在创建一次 每长按一次控件就创建一次上下文菜单

2f51f7d595697c94bad70815a527d62e.png

你往往没想到,你的潜力有多大

UI控件

1.CheckBox 多选框

应用场景:问卷调查 免责声明 是否记住密码

xml:

android:id="@+id/checkBox1"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:checked="true" true:选中 false:没有选中(默认)

android:text="记住密码" /> 文本

code:

//设置CheckBox选中状态

mBox.setChecked(true);

//获得CheckBox是否选中

boolean checked = mBox.isChecked();

//获得CheckBox的文本

String string = mBox.getText().toString();

CheckBox状态改变监听事件

mBox.setOnCheckedChangeListener(new OnCheckedChangeListener() {

@Override

public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {

//CheckBox改变时调用onCheckedChanged

Log.e("onCheckedChanged"+buttonView.getText().toString(), "isChecked"+isChecked);

}

});

Button

设置按钮是否可点击

xml:

android:enabled="true" 可点击 false :不可点击

code:

mButton.setEnabled(false)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值