⑴ android 怎麼樣獲取彈出窗口輸入的信息
這個問題也困擾過我,後來我終於發現了。就是一個很簡單的方法. findViewById.
下面解決方法來源於android學習手冊,android學習手冊包含9個章節,108個例子,源碼文檔隨便看,例子都是可交互,可運行,源碼採用android studio目錄結構,高亮顯示代碼,文檔都採用文檔結構圖顯示,可以快速定位。360手機助手中下載,排列到第四個。
1 類似ListView的AlertDialog
java">publicclassDialog_{
/**.*/
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
finalString[]arrayFruit=newString[]{"蘋果","橘子","草莓","香蕉"};
DialogalertDialog=newAlertDialog.Builder(this).
setTitle("你喜歡吃哪種水果?").
setIcon(R.drawable.ic_launcher)
.setItems(arrayFruit,newDialogInterface.OnClickListener(){
@Override
publicvoidonClick(DialogInterfacedialog,intwhich){
Toast.makeText(Dialog_AlertDialogDemoActivity.this,arrayFruit[which],Toast.LENGTH_SHORT).show();
}
}).
setNegativeButton("取消",newDialogInterface.OnClickListener(){
@Override
publicvoidonClick(DialogInterfacedialog,intwhich){
//TODOAuto-generatedmethodstub
}
}).
create();
alertDialog.show();
}
}
2 自定義布局的AlerDialog 。 一個關鍵方法就是myLoginView .findViewById 獲取各種控制項。
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//取得自定義View
LayoutInflaterlayoutInflater=LayoutInflater.from(this);
ViewmyLoginView=layoutInflater.inflate(R.layout.login,null);
DialogalertDialog=newAlertDialog.Builder(this).
setTitle("用戶登錄").
setIcon(R.drawable.ic_launcher).
setView(myLoginView).
setPositiveButton("登錄",newDialogInterface.OnClickListener(){
@Override
publicvoidonClick(DialogInterfacedialog,intwhich){
//TODOAuto-generatedmethodstub
}
}).
setNegativeButton("取消",newDialogInterface.OnClickListener(){
@Override
publicvoidonClick(DialogInterfacedialog,intwhich){
//TODOAuto-generatedmethodstub
}
}).
create();
alertDialog.show();
}