[英]Custom dialog box in android?
1.這是添加按鈕,當我單擊此處時,應該出現自定義對話框。
Button add = (Button) findViewById(R.id.addbutton);
// add button listener
add.setOnClickListener(new OnClickListener() {
2.這是自定義對話框的代碼
// custom dialog
final Dialog dialog = new Dialog(context);
dialog.setContentView(R.layout.form);
dialog.setTitle("Custom dailog");
TextView uname_TV = (TextView) findViewById(R.id.Uname_TV);
EditText uname_ET = (EditText) findViewById(R.id.Uname_ET);
TextView dname_TV = (TextView) findViewById(R.id.Drugname_TV);
EditText dname_ET = (EditText) findViewById(R.id.Drugname_ET);
spinner = (Spinner) findViewById(R.id.spinner_id);
ArrayAdapter < String > adapter = new ArrayAdapter < String > (
context, android.R.layout.simple_spinner_item,
noof_times);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
spinner.setSelection(1);
spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView <? > parent,
View view, int position, long id) {
String item = parent.getItemAtPosition(position).toString();
String item1 = parent.getSelectedItem().toString();
Toast.makeText(getApplicationContext(), "Selected:" + item, Toast.LENGTH_LONG).show();
}
@Override
public void onNothingSelected(AdapterView <? > arg0) {
// TODO Auto-generated method stub
}
});
dialog.show();
我正進入(狀態
Null pointer exception at spinner.setAdapter(adapter);
我沒有得到,這個錯誤的幫助之一
是的,你會因為
TextView uname_TV = (TextView) findViewById(R.id.Uname_TV);
EditText uname_ET = (EditText) findViewById(R.id.Uname_ET);
TextView dname_TV = (TextView) findViewById(R.id.Drugname_TV);
EditText dname_ET = (EditText) findViewById(R.id.Drugname_ET);
spinner = (Spinner) findViewById(R.id.spinner_id);
將這些更改為
TextView uname_TV = (TextView) dialog.findViewById(R.id.Uname_TV);
EditText uname_ET = (EditText) dialog.findViewById(R.id.Uname_ET);
TextView dname_TV = (TextView) dialog.findViewById(R.id.Drugname_TV);
EditText dname_ET = (EditText) dialog.findViewById(R.id.Drugname_ET);
spinner = (Spinner) dialog.findViewById(R.id.spinner_id);
它應該是
spinner = (Spinner) dialog.findViewById(R.id.spinner_id);
嘗試使用此行..希望它會起作用。
在自定義視圖時,必須為布局充氣。 在click事件上嘗試以下代碼:
LayoutInflater inflater=LayoutInflater.from(YouActivityName.this);
View view=inflater.inflate(R.layout.form, null);
AlertDialog.Builder builder=new AlertDialog.Builder(YouActivityName.this);
builder.setView(view);
Spinner spinner=(Spinner) view.findViewById(R.id.spinner_id);
ArrayAdapter<String > adapter=new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_spinner_item,item);
spinner.setAdapter(adapter);
builder.create();
builder.show();
在代碼中聲明上面其余的視圖。希望對您有幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.