美文网首页
为Dialog中的EditText设置Margin的方法

为Dialog中的EditText设置Margin的方法

作者: RedB | 来源:发表于2022-05-24 12:57 被阅读0次

错误做法:

LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
layoutParams.setMargins(10,10,10,10);
editText.setLayoutParams(layoutParams);

错误原因(原文):

因为我们设置的LayoutParams的高是WRAP_CONTENT,而他布局里又没有子控件,自然就没有高度。

正确方法,必须在外面加一个Layout(原文):

final AlertDialog.Builder alert = new AlertDialog.Builder(thisActivity);
final EditText input = new EditText(thisActivity);
FrameLayout container = new FrameLayout(thisActivity);
FrameLayout.LayoutParams params = new  FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
params.leftMargin = getResources().getDimensionPixelSize(R.dimen.dialog_margin);
input.setLayoutParams(params);
container.addView(input);
alert.setView(container);

相关文章

网友评论

      本文标题:为Dialog中的EditText设置Margin的方法

      本文链接:https://www.haomeiwen.com/subject/ouejprtx.html