Android-如何在获得焦点时以编程方式获取TextInputLayout的提示大小?

时间:2018-07-13 05:54:48

标签: android android-textinputlayout android-textinputedittext

如何获取“输入电子邮件ID”的提示大小(此图中提到)?

image

2 个答案:

答案 0 :(得分:1)

hint 的文本大小与TextInputLayout中要输入的文本相同。要在Java中获得textSize,请执行以下操作:

XML:

 <android.support.design.widget.TextInputLayout
        android:layout_width="match_parent"
        android:layout_height="157dp"
        android:layout_alignParentStart="true"
        android:layout_alignParentTop="true"
        android:layout_marginStart="0dp"
        android:layout_marginTop="158dp">

        <android.support.design.widget.TextInputEditText
            android:layout_width="match_parent"
            android:id="@+id/TextInputEditText"
            android:layout_height="wrap_content"
            android:hint="hint" />
    </android.support.design.widget.TextInputLayout>

MainActivity.java:

    final TextInputEditText textInputEditText = findViewById(R.id.TextInputEditText);


    textInputEditText.setOnFocusChangeListener(new View.OnFocusChangeListener() {
        @Override
        public void onFocusChange(View v, boolean hasFocus) {
            float size = textInputEditText.getTextSize();
            Log.i("TEXT_SIZE", String.valueOf(size));
        }
    });

如果要更改textSize,可以使用textInputEditText.setTextSize();

答案 1 :(得分:0)

例如: 要获取提示大小,您需要像这样获得edittext的文本大小:

    EditText mEmailId= findViewById(R.id.et_email);
    mEmailId.getTextSize();

String.xml

<string name="edittext_hint"><font size="15">Hint set here</font></string>

然后在您的XML中编写

<EditText
    android:id="@+id/input_msg"
    android:inputType="text"
    android:hint="@string/edittext_hint" />

OR

减小EditText上的字体大小-也将减小提示的大小。即android:textSize="15dp"