Мне нужно программно установить высоту и ширину виджета EditText.Я использую RelativeLayout, чтобы сделать это, и он отлично работает, насколько размер, но фактический виджет рисует себя неправильно:
![Incorrect Drawing of EditText](https://i.stack.imgur.com/w92oD.png)
Я бы ожидал, что он будет рисоватьвот так (что будет, если я установлю высоту ViewGroup.LayoutParams.WRAP_CONTENT вместо запрашиваемой мной высоты - иногда): ![enter image description here](https://i.stack.imgur.com/MF3M4.png)
Есть идеи?
Обратите внимание, что я не могу переключиться на DIP: s (независимость от dpi фактически уже обработана движком, использующим этот код).Также обратите внимание, что я не нашел никакого значения setTextSize (), которое исправляет неправильное поведение.
Вот как я создаю свой виджет:
EditText et = new EditText(this);
et.setFocusable(true);
et.setSingleLine(true);
et.setHint(label);
et.setText(text);
et.setTextSize(TypedValue.COMPLEX_UNIT_PX,(h/3)+5);
et.setId(cn);
rllp = new RelativeLayout.LayoutParams(w,h);
rllp.leftMargin = x;
rllp.topMargin = y;
layout.addView(et,rllp);