为什么 setWidth/Height 在 EditText 上不起作用



在下面的代码中,直接在nameEdit上设置宽度和高度不起作用,我必须使用setLayoutParams。为什么设置宽度/高度不起作用?在我找到解决方案之前,这让我感到非常沮丧。

    EditText nameEdit = new EditText(  theActivity );
    nameEdit.setX(300);
    nameEdit.setY(400);
//      nameEdit.getLayoutParams().width = 100;
//      nameEdit.getLayoutParams().height = 60;
    //final EditText edittext = new EditText(this);
    nameEdit.setLayoutParams(lparams);
    //return edittext;
//      nameEdit.setWidth(100);
//      nameEdit.setHeight(60);
    nameEdit.setBackgroundColor(Color.RED);
    ((ViewGroup) (theActivity).findViewById( android.R.id.content )).addView( nameEdit );

为什么 setHeight 或 setWidth 不起作用?

setHeight 或 setWidth 与文本的行高关系大于视图的高度。

为什么 setLayoutParams 有效?

当我们设置 editText 的布局

参数时,我们告诉呈现 editText 的父布局为视图设置指定的高度和宽度。因此,它工作正常。

任何人请随时添加更多详细信息或更新我的理解......

谢谢

最新更新