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

标签 android android-edittext android-alertdialog

你好,我正在尝试设置 AlertDialogEditText 的左右边距。我想在 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);

提前致谢。

最佳答案

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

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

关于android - 如何在Alert Dialog中设置EditText的dp左右边距,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25227429/

相关文章:

所有 Android 版本的 Android AlertDialog 设计相同

android - 动画标记谷歌地图如何像 android 中的图像所示?

java - E/Android运行时: FATAL EXCEPTION: main error in android studio

android - 在 Windows 操作系统的 Cygwin 下为 Android 构建 FFMPEG

java - EditText 上的 NullPointerException .getText().toString()

android - 如何在输入时捕获 EditText 文本长度?

android - 如何更改 EditText 和 Button 的高度?

android - 我如何使用 opencv 从相机的所有位置检测带有 android 的人脸?

android - 带有换行符的 DialogFragment setMessage

android - 如何将图像添加到android中的AlertDialog?