alertdialog的六種建立方式
建立alertdialog的步驟:
1、建立alertdialog.builder物件
2、呼叫builder物件的settitle方法設定標題,seticon方法設定圖示
3、呼叫builder相關方法如setmessage方法、setitems方法、setsinglechoiceitems方法、setmultichoiceitems方法、setadapter方法、setview方法設定不同型別的對話方塊內容。
4、呼叫setpositivebutton、setnegativebutton、setneutralbutton設定多個按鈕
5、呼叫builder物件的create()方法建立alertdialog物件
6、呼叫alertdialog物件的show()方法將對話方塊顯示出來
一、setmessage:設定對話方塊內容為簡單文字內容
複製**
// 建立構建器
alertdialog.builder builder = new alertdialog.builder(this);
// 設定引數
builder.settitle(「請做出選擇」).seticon(r.drawable.ic_launcher)
.setmessage(「我美不美」)
.setpositivebutton(「美」, new onclicklistener()
}).setnegativebutton("不美", new onclicklistener()
}).setneutralbutton("不知道", new onclicklistener()
});builder.create().show();複製**
執行截圖:
二、setitem:設定文字框內容為簡單列表項
複製**
// 建立資料
final string items = new string ;
// 建立對話方塊構建器
alertdialog.builder builder = new alertdialog.builder(this);
// 設定引數
builder.seticon(r.drawable.ic_launcher).settitle(「提示」)
.setitems(items, new onclicklistener()
});builder.create().show();複製**
執行截圖:
三、setsinglechoiceitems()設定對話方塊內容為單選列表項
複製**
// 建立資料
final string items = new string ;
// 建立對話方塊構建器
alertdialog.builder builder = new alertdialog.builder(this);
// 設定引數
builder.seticon(r.drawable.ic_launcher).settitle(「提示」)
.setsinglechoiceitems(items, 0, new onclicklistener()
});builder.create().show();複製**
執行截圖:
四、setmultichoiceitems()設定對話方塊內容為多選項列表
複製**
// 建立資料
final string items = new string ;
// 建立對話方塊構建器
alertdialog.builder builder = new alertdialog.builder(this);
builder.seticon(r.drawable.ic_launcher)
.settitle(「提示」)
.setmultichoiceitems(items,
new boolean ,
new onmultichoiceclicklistener()
}});
builder.create().show();複製**
執行截圖:
五、setadapter()設定對話方塊內容為自定義列表項(這裡是乙個布局)
複製**
// 建立資料
final string items = new string ;
// 建立對話方塊構建器
alertdialog.builder builder = new alertdialog.builder(this);
builder.settitle(「提示」)
.seticon(r.drawable.ic_launcher)
.setadapter(
new arrayadapter(mainactivity.this,
r.layout.item, r.id.tv, items),
new onclicklistener()
});builder.create().show();複製**
執行截圖:
六、setview()設定對話方塊為自定義view
複製**
// 建立對話方塊構建器
alertdialog.builder builder = new alertdialog.builder(this);
// 獲取布局
view view2 = view.inflate(mainactivity.this, r.layout.login, null);
// 獲取布局中的控制項
final edittext username = (edittext) view2.findviewbyid(r.id.username);
final edittext password = (edittext) view2.findviewbyid(r.id.password);
final button button = (button) view2.findviewbyid(r.id.btn_login);
// 設定引數
builder.settitle(「login」).seticon(r.drawable.ic_launcher)
.setview(view2);
// 建立對話方塊
final alertdialog alertdialog = builder.create();
button.setonclicklistener(new view.onclicklistener()
toast.maketext(mainactivity.this, "登入失敗", 0).show();
alertdialog.dismiss();// 對話方塊消失
}});
alertdialog.show();複製**
執行截圖:
siberiadante的部落格:
AlertDialog的樣式修改
一 控制dialog 的背景方法 1.定義乙個無背景主題主題 2.建立dialog dialog new dialog this,r.style.dialog dialog.setcontentview r.layout.dialog loading or dialog new dialog thi...
修改AlertDialog的大小
最近做的專案中使用到了alertdialog,需要調節alertdialog的大小,試了好多方法,終於成功了,記錄一下 dialog.getwindow setlayout 460,140 這個方法一定要寫在show 後面才會成功。下面的做法也可以,不過同樣要在show後面做。windowmanag...
android中的AlertDialog具體概述
android的alertdialog具體解釋 alertdialog的構造方法所有是protected的。所以不能直接通過new乙個alertdialog來建立出乙個alertdialog。要建立乙個alertdialog,就要用到alertdialog.builder中的create 方法。使用...