如何在Alert Dialog中的EditText的dp中设置左右边距

时间:2014-08-10 09:51:04

标签: android android-edittext android-alertdialog

您好我正在尝试设置EditTextAlertDialog的左右边距。我想在dp中设置它们,以便它可以正常工作到所有设备密度。我试图像下面这样做,但仍然没有余量。

AlertDialog.Builder alerBuilder = new AlertDialog.Builder(PhotoOptions.this);
alerBuilder.setMessage(getString(R.string.input_compress_value));

final EditText compressValueEditText = new EditText(PhotoOptions.this);
compressValueEditText.setInputType(InputType.TYPE_CLASS_NUMBER);

LayoutParams params = new LayoutParams(
        LayoutParams.WRAP_CONTENT,      
        LayoutParams.WRAP_CONTENT
);
params.leftMargin = 100;

alerBuilder.setView(compressValueEditText);
compressValueEditText.setLayoutParams(params);

提前致谢。

1 个答案:

答案 0 :(得分:1)

您必须将dp值转换为像素值,例如,通过

params.leftMargin = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 100, getResources().getDisplayMetrics());