设置宽度时,我的自定义对话框不会出现

时间:2014-09-25 12:37:11

标签: android dialog

final Dialog dialog = new Dialog(MainScreenActivity.this);

dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);

dialog.setContentView(R.layout.activity_ana_ekran_dialog);
dialog.setCanceledOnTouchOutside(true);

Display display = getWindow().getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int width = size.x;
WindowManager.LayoutParams params = getWindow().getAttributes();
params.width = width * 90 / 100;
dialog.getWindow().setAttributes(params);

dialog.show();

当我按下操作栏按钮时,此代码位于onOptionsItemSelected部分,我的客户对话框没有出现。

当我设置宽度时,我的自定义对话框不会出现?

1 个答案:

答案 0 :(得分:1)

我解决了问题,这是我修复它的方式......

Costume Dialog Class public class HarcamaKayitDialog extends Dialog implements android.view.View.OnClickListener

变量

Context ctx;
EditText yorum;
EditText harcama;
Button buttonTamamDialog;
Button buttonIptalDialog;
Dialog dialog;

Constractor

   public HarcamaKayitDialog(Context context){
        super(context);
        this.ctx = context;
        this.dialog = this;
   }

的onCreate。

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.activity_ana_ekran_alert_dialog);
        Display display = getWindow().getWindowManager().getDefaultDisplay();
        Point size = new Point();
        display.getSize(size);
        int width = size.x;
        WindowManager.LayoutParams params = getWindow().getAttributes();
        params.width = width * 90 / 100;
        getWindow().setAttributes(params);
        findViews();

    }

的onClick。

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
        case R.id.buttonTamam:

            //transactions

            dialog.dismiss();
            break;
        case R.id.buttonIptal:
            dialog.dismiss();

            break;
        default:
            break;
        }
    }

findViews功能。

private void findViews() {
    yorum = (EditText) findViewById(R.id.editTextYorum);
    harcama = (EditText) findViewById(R.id.editTextHarcama);
    buttonTamamDialog = (Button) findViewById(R.id.buttonTamam);
    buttonIptalDialog = (Button) findViewById(R.id.buttonIptal);
    buttonTamamDialog.setOnClickListener(this);
    buttonIptalDialog.setOnClickListener(this);

}