Android EditText宽度更改

时间:2016-10-17 09:31:34

标签: android android-edittext

我有Android EditText小部件的问题。在代码中我按像素设置小部件的宽度。但是当用户关注并尝试输入文本时,随着editText小部件的改变。我们怎么解决这个问题? 请参阅视频以了解我的问题。 VIDEO

注意:不需要弊端。如果您有些不明白,请在此询问,并提供更多详细信息。感谢。

float[] sizes = calculateMaxWidthAnswer(answer);

    this.editTextWidth = sizes[0];
    this.editTextHeight = sizes[1];

    editText.setWidth((int) editTextWidth);
    editText.setHeight((int) editTextHeight);


 protected float[] calculateMaxWidthAnswer(String item) {
    CustomKeyboardEditText cKE = new CustomKeyboardEditText(getContext(), isDisabledCustomKeyboard);
    cKE.setSingleLine(true);
    cKE.setTypeface(Typeface.DEFAULT_BOLD);
    cKE.setText(item);
    Paint mPaint = cKE.getPaint();
    Rect bounds = new Rect();
    mPaint.getTextBounds(item, 0, item.length(), bounds);
    float size = bounds.width() + MathTool.dpToPx(cKE.PADDING_LR * 3);

    return new float[]{size, bounds.height()};
}

CustomKeyboardEditText窗口小部件中,任何可能导致此问题的代码。

1 个答案:

答案 0 :(得分:0)

LayoutParams解决了问题。谢谢大家。