alertdialog怎么设置alertdialog message显示位置
alertdialog 时间:2021-07-13 阅读:(
)
请教下AlertDialog.Builder那个黑背景怎么消除掉呢?布局透明
你这种问题是属于自定义类型的问题了。
想改变后面的背景的话,就得继承Dialog自己重写一个弹出框,只需自定义一个你要的样式style和layout!你可以查一下自定义dialog,很简单的,不难android中AlertDialog.Builder
AlertDialog.Builder的API可以查看官网文档,具体实现代码如下:
1.创建AlertDialog.Builder并设置数据源
AlertDialog.Builder builder = new Builder(context);
builder.setTitle("复选框"); //设置对话框标题
builder.setIcon(android.R.drawable.ic_menu_more); //设置对话框标题前的图标
final String[] data = getResources().getStringArray(R.array.radio); //通过resources 得到strings.xml中的字符串数组
boolean[] state = new boolean[data.length];
for(int i=0; i<data.length; i++){
state[i] = sboolean.get(i); //将状态集合中的数据取出来,下次选择时候会默认选中
}
2.注册点击事件,并记录复选的数据
/*
* 第一个参数是,数据原,可以是数组,也可以传strings.xml那的字符串ID,但是建议用数组,因为多选监听返回的是数组的标下
* 第二个参数是,默认的选中位置,是个boolean数组,对应item的位置
* 第三个是列表点击监听事件
*/
builder.setMultiChoiceItems(R.array.radio, state, new DialogInterface.OnMultiChoiceClickListener() {//注册单选择监听事件
@Override
public void onClick(DialogInterface dialog, int which, boolean isChecked) {
if(isChecked){
Toast.makeText(context,"你选择了: " + data[which], Toast.LENGTH_SHORT).show();
checkBoxData.add(data[which]); //选择的时候要保存起来
}else{
Toast.makeText(context,"你取消了: " + data[which], Toast.LENGTH_SHORT).show();
checkBoxData.remove(data[which]); //取消选中的时候要删除掉
}
sboolean.put(which, isChecked); //每次选择都要记录下这个item的状态
}
});
3.增加确定和取消按键
builder.setPositiveButton("确认", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(context, "你点了确定,选择的是: " + checkBoxData.toString(), Toast.LENGTH_SHORT).show();
}
});
4.设置dialog的相关参数,并弹出
builder.setNegativeButton("取消", null); //取消不做任何处理
builder.setCancelable(true); //设置按钮是否可以按返回键取消,false则不可以取消
AlertDialog dialog = builder.create(); //创建对话框
dialog.setCanceledOnTouchOutside(true); //设置弹出框失去焦点是否隐藏,即点击屏蔽其它地方是否隐藏
dialog.show();android关闭AlertDialog.Builder
首先AlertDialog.Builder(this)所传参数类型是contex,也就是上下文环境。
this意思是当前对象,就是调用AlertDialog.Builder()的对象。
所以,前者的this是最外面的那个class产生的对象
后者是class A产生的对象。
android AlertDialog调用不到setCanceledOnTouchOutside怎么办
Android中,在Dialog中设置setCanceledOnTouchOutside方法如下:
具体实现代码:
1.创建对象框
AlertDialog.Builder builder = new Builder(context);
builder.setTitle("请输入"); //设置对话框标题
builder.setIcon(android.R.drawable.btn_star); //设置对话框标题前的图标
2.创建EditText输入框
final EditText edit = new EditText(context);
3.将输入框赋值给Dialog,并增加确定取消按键
builder.setView(edit);
builder.setPositiveButton("确认", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(context, "你输入的是: " + edit.getText().toString(), Toast.LENGTH_SHORT).show();
}
});
builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(context, "你点了取消", Toast.LENGTH_SHORT).show();
}
});
4.设置常用api,并show弹出
builder.setCancelable(true); //设置按钮是否可以按返回键取消,false则不可以取消
AlertDialog dialog = builder.create(); //创建对话框
dialog.setCanceledOnTouchOutside(true); //设置弹出框失去焦点是否隐藏,即点击屏蔽其它地方是否隐藏
dialog.show();如何设置AlertDialog的样式
可以完全自定义样式,setView 这个方法就可以 ;
参考如下:
AlertDialog.Builder builder = new AlertDialog.Builder(new ContextThemeWrapper(this, R.style.AlertDialogCustom));
然后自定义自己的样式就可以了;
怎么设置alertdialog message显示位置
????
下面是java代码,将上面的TextView加入message
以题主为例,R.layout.dialog_message是上面xml的id
final?AlertDialog.Builder?Dialog?=?new?AlertDialog.Builder(this);
Dialog.setTitle("悟空提示:");
LayoutInflater?inflater?=?getLayoutInflater();
View?convertView?=?inflater.inflate(R.layout.dialog_message,null);??
TextView?message?=?(TextView)?convertView.findViewById(R.id.message);
message.setText("师傅您输入的城市重复");
Dialog.setView(convertView);
Bluehost怎么样,Bluehost好不好,Bluehost成立十八周年全场虚拟主机优惠促销活动开始,购买12个月赠送主流域名和SSL证书,Bluehost是老牌虚拟主机商家了,有需要虚拟主机的朋友赶紧入手吧,活动时间:美国MST时间7月6日中午12:00到8月13日晚上11:59。Bluehost成立于2003年,主营WordPress托管、虚拟主机、VPS主机、专用服务器业务。Blueho...
台湾云服务器去哪里买?国内有没有哪里的台湾云服务器这块做的比较好的?有很多用户想用台湾云服务器,那么判断哪家台湾云服务器好,不是按照最便宜或最贵的选择,而是根据您的实际使用目的选择服务器,只有最适合您的才是最好的。总体而言,台湾云服务器的稳定性确实要好于大陆。今天,云服务器网(yuntue.com)小编来介绍一下台湾云服务器哪里买和一年需要多少钱!一、UCloud台湾云服务器UCloud上市云商,...
gigsgigsCloud日本东京软银VPS的大带宽配置有100Mbps、150Mbps和200Mbps三种,三网都走软银直连,售价最低9.8美元/月、年付98美元。gigsgigscloud带宽较大延迟低,联通用户的好选择!Gigsgigscloud 日本软银(BBTEC, SoftBank)线路,在速度/延迟/价格方面,是目前联通用户海外VPS的最佳选择,与美国VPS想比,日本软银VPS延迟更...
alertdialog为你推荐
安卓性能测试工具三款安卓系统手机测试软件哪个好用安卓性能测试工具谁能介绍几个测试手机性能的软件?windowsphone手机windows phone系统的手机有哪些windows7系统要求Windows7系统对电脑配置的要求,linux操作系统好吗Linux操作系统和WINDOWS7操作系统哪个好Costco茅台被抢光Costco在中国大陆第一家店开业首日被挤爆,为什么人们都特别青睐洋货?500人同时微信如何扩大到500人群买卖论坛请推荐几个二手手机论坛,越多越好盈科oa办公系统OA登录页面登录后不退出浏览器再次进入登录页面用别的用户登录显示的还是第一个用户的软件测试工程师待遇软件测试工程师年薪多少RMB?
网站域名空间 广西虚拟主机 哈尔滨域名注册 com域名价格 vps论坛 什么是域名地址 2014年感恩节 godaddy优惠码 圣诞节促销 牛人与腾讯客服对话 英文站群 本网站在美国维护 seednet 股票老左 网站卫士 空间租赁 韩国代理ip 东莞服务器托管 论坛主机 独立主机 更多