为什么我不显示正面按钮

Why i dont show positiveButton

我用 "positive button" 创建了一个 AlertDialog,但在模拟器中它没有显示。有什么问题?

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button btnDersEkle = (Button) findViewById(R.id.btnDersEkle);
        etDers = new EditText(MainActivity.this);
        LayoutDers = (LinearLayout) findViewById(R.id.layoutDers);
        AlertDialog.Builder alertDers = new AlertDialog.Builder(MainActivity.this);
        alertDers.setTitle("Ders Adi Giriniz");
        alertDers.setView(etDers);
        final AlertDialog alert = alertDers.create();

        alertDers.setPositiveButton("TAMAM", new DialogInterface.OnClickListener() {

            @Override
            public void onClick(DialogInterface dialog, int which) {
                tvDers = new TextView(MainActivity.this);
                tvDers.setText(etDers.getText().toString());
                LayoutDers.addView(tvDers);

            }
        });


        btnDersEkle.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                alert.show();
            }
        });


    }
}

您需要 setPositiveButton 才能创建 AlertDialog。试试这个:

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button btnDersEkle = (Button) findViewById(R.id.btnDersEkle);
        etDers = new EditText(MainActivity.this);
        LayoutDers = (LinearLayout) findViewById(R.id.layoutDers);
        AlertDialog.Builder alertDers = new AlertDialog.Builder(MainActivity.this);
        alertDers.setTitle("Ders Adi Giriniz");
        alertDers.setView(etDers);
        alertDers.setPositiveButton("TAMAM", new DialogInterface.OnClickListener() {

            @Override
            public void onClick(DialogInterface dialog, int which) {
                tvDers = new TextView(MainActivity.this);
                tvDers.setText(etDers.getText().toString());
                LayoutDers.addView(tvDers);

            }
        });
        final AlertDialog alert = alertDers.create();

        btnDersEkle.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                alert.show();
            }
        });
    }
}

创建 AlertDialog 后,您将无法修改此类内容。

使用setPositiveButton()和其他方法之前 create():

final AlertDialog alertDialog = new AlertDialog.Builder(MainActivity.this)
.setPositiveButton(/* ... */)
.create();

因为你也必须设置否定按钮。

alertDers.setNegativeButton("Button2", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface arg0, int arg1) {
    //DO TASK
}

如果您不想显示此按钮,您可以这样做:

alertDers.getButton(yourButton).setEnabled(false);