Android 单击我的菜单按钮,我想打开自定义警报对话框,但无法打开
单击菜单,我想打开警报拨号框 事实上,错误是混合视图充气机。。。 我不知道要在菜单区充气什么Android 单击我的菜单按钮,我想打开自定义警报对话框,但无法打开,android,android-alertdialog,Android,Android Alertdialog,单击菜单,我想打开警报拨号框 事实上,错误是混合视图充气机。。。 我不知道要在菜单区充气什么 在菜单中充气(int,menu)或者我不知道在菜单下充气什么 popup.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() { public boolean onMenuItemClick(MenuItem item) { int id = item.getItemId(); sw
在菜单中充气(int,menu)或者我不知道在菜单下充气什么
popup.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
public boolean onMenuItemClick(MenuItem item) {
int id = item.getItemId();
switch (id) {
case R.id.add_to_playlist:
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
View view1 = inflater.inflate(R.layout.alert_textview_inflator);
builder.setView(view1);
final EditText play_list_name = (EditText) view1.findViewById(R.id.alertTextEditor);
builder.setPositiveButton("Create", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
Editable m = play_list_name.getText();
String folder_name_act = m.toString();
// addComment(folder_name_act);
}
});
builder.setNegativeButton("Cancil", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
builder.show();
break;
case R.id.delete:
Log.e("qwerty", "delete");
break;
}
return true;
}
});
popup.show();
}
});
private void showPopUpMenu(View view){
PopupMenu popupMenu = new PopupMenu(mContext, view);
popupMenu.getMenuInflater().inflate(R.menu.menu_popup, popupMenu.getMenu());
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
int id = item.getItemId();
switch (id) {
case R.id.add_to_playlist:
showAlert();
break;
case R.id.delete:
Log.e("qwerty", "delete");
break;
}
return false;
}
});
popupMenu.show();
}
private void showAlert(){
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
View view1 = inflater.inflate(R.layout.alert_textview_inflator, null, false););
builder.setView(view1);
final EditText play_list_name = (EditText) view1.findViewById(R.id.alertTextEditor);
builder.setPositiveButton("Create", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
Editable m = play_list_name.getText();
String folder_name_act = m.toString();
// addComment(folder_name_act);
}
});
builder.setNegativeButton("Cancil", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
builder.show();
}
试试这个
View view = getLayoutInflater().inflate(R.layout.alert_textview_inflator, null, false);
我稍微更改了您的代码。试试这个可能会对你有所帮助
popup.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
public boolean onMenuItemClick(MenuItem item) {
int id = item.getItemId();
switch (id) {
case R.id.add_to_playlist:
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
View view1 = inflater.inflate(R.layout.alert_textview_inflator);
builder.setView(view1);
final EditText play_list_name = (EditText) view1.findViewById(R.id.alertTextEditor);
builder.setPositiveButton("Create", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
Editable m = play_list_name.getText();
String folder_name_act = m.toString();
// addComment(folder_name_act);
}
});
builder.setNegativeButton("Cancil", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
builder.show();
break;
case R.id.delete:
Log.e("qwerty", "delete");
break;
}
return true;
}
});
popup.show();
}
});
private void showPopUpMenu(View view){
PopupMenu popupMenu = new PopupMenu(mContext, view);
popupMenu.getMenuInflater().inflate(R.menu.menu_popup, popupMenu.getMenu());
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
int id = item.getItemId();
switch (id) {
case R.id.add_to_playlist:
showAlert();
break;
case R.id.delete:
Log.e("qwerty", "delete");
break;
}
return false;
}
});
popupMenu.show();
}
private void showAlert(){
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
View view1 = inflater.inflate(R.layout.alert_textview_inflator, null, false););
builder.setView(view1);
final EditText play_list_name = (EditText) view1.findViewById(R.id.alertTextEditor);
builder.setPositiveButton("Create", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
Editable m = play_list_name.getText();
String folder_name_act = m.toString();
// addComment(folder_name_act);
}
});
builder.setNegativeButton("Cancil", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
builder.show();
}
你没读过我的问题吗。充气机只要求2个参数(整数,菜单)对不起,兄弟,我已经更新了我的答案。您必须使用
活动
的充气器,而不是菜单
's我添加了这一行,并且它工作了视图1=View.inflate(getContext(),R.layout.alert\u textview\u充气器,null);