子类EditText以添加标签

时间:2012-10-24 16:49:38

标签: android android-edittext

我写了一个简单的子类来为edittext字段添加标签。我希望除了提示之外还有一个标签。该字段应该是可编辑的,在字段的右侧有一个提示,并在框的左侧有一个标签。

  @Override
  public void onDraw(final Canvas canvas) {
    super.onDraw(canvas);
    if (labelX == -1 || labelY == -1) {
      makeTextMeasurements();
    }
    canvas.save();
    canvas.drawText(mLabel, labelX, labelY, mPaint);
    canvas.restore();
  }

  private void makeTextMeasurements() {
    mMeasuredTextHeight = getTextHeight(mPaint);
    labelX = (int) ViewUtils.getScaledPixels(20, getContext());
    labelY = (int) ((getHeight() / 2.0f) + (mMeasuredTextHeight / 2.0f));
  }

如果我不调用setInputType,该类工作正常。但是如果我调用setInputType,则不会出现要由canvas.drawText()绘制的文本。我浏览了EditText源代码,但找不到导致这种情况发生的原因。有人有想法吗?

0 个答案:

没有答案