我需要问一下如何在警报对话框中给三个按钮充气。基本上列表视图是可用的,当用户长按列表项时,会出现一个警告对话框,对话框应该有编辑,删除和其他一些按钮,按钮应该按下时执行任务,我真的很感激它,如果有人可以告诉我应该如何使用按钮充气警报对话框。谢谢
答案 0 :(得分:1)
无需发明轮子两次.. 它被称为上下文菜单: http://developer.android.com/guide/topics/ui/menus.html
答案 1 :(得分:1)
如果您使用AlertDialog.Builder,则可以添加三个按钮。
new AlertDialog.Builder(this)
.setPositiveButton("Edit", new OnClickListener()
{
// Code Here
})
.setNeutralButton("Delete", new OnClickListener()
{
// Code Here
})
.setNegativeButton("Delete", new OnClickListener()
{
// Code Here
})
.create()
.show();
答案 2 :(得分:0)
您可以使用上下文菜单,如下所示:
final OnCreateContextMenuListener occml = new OnCreateContextMenuListener() {
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo)
{
AdapterContextMenuInfo info = (AdapterContextMenuInfo) menuInfo;
menu.setHeaderTitle(pi.getBrowserIdentifier());
menu.add(R.id.actionBarMenu_Settings, R.string.one, 1, getString(R.string.one));
menu.add(R.id.actionBarMenu_Settings, R.string.two, 2, getString(R.two));
menu.add(R.id.actionBarMenu_Settings, R.string.three, 3, getString(R.string.three));
};
_listView= (ListView) findViewById(R.id.list);
_listView.setOnCreateContextMenuListener(occml);
答案 3 :(得分:0)
我这样做,你也可以
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Seçenekler");
builder.setAdapter( /*#your adapter here#*/, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//do something
}
});
答案 4 :(得分:0)
下一个代码捕获视图覆盖自定义对话框类中的setView extends alertdialog:
class example extends Activity{
private void onClick_show_dialog( View v )
{
LayoutInflater lainf = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
final View frmFileSystem = lainf.inflate(R.layout.dlg_filesystem, (ViewGroup) findViewById(R.id.lilaFileSystem));
dlg_filesystem = new DlgFileSystem(this);
dlg_filesystem.setView(frmFileSystem);
dlg_filesystem.setCancelable(true);
dlg_filesystem.setButton( 'aceptar' , new DialogInterface.OnClickListener() { public void onClick( DialogInterface dialog, int which )
{
alert( dlg_filesystem.prueba );
}});
dlg_filesystem.setButton2( 'cancelar' , new DialogInterface.OnClickListener() { public void onClick( DialogInterface dialog, int which )
{
}});
dlg_filesystem.show();
}
}
和
public class DlgFileSystem extends AlertDialog{
public String prueba;
private Context context;
private View frmFileSystem;
public DlgFileSystem(Context context)
{
super(context);
this.context = context;
}
@Override
public void setView( View frmFileSystem )
{
super.setView(frmFileSystem);
this.frmFileSystem = frmFileSystem;
TextView txprueba = (TextView)frmFileSystem.findViewById(R.id.txPrueba);
txprueba.setText("adios");
}
}