4

テキストサイズを変更したいとします。私はコードでそれをやっています、そしてそれは次のようになります:

_textInputLayout.EditText.SetTextSize(Android.Util.ComplexUnitType.Dip, 40);

エントリにテキストを書き込むと、40dip テキストのように見えます。しかし、エントリが空の場合、ヒント テキストは 16-18dip のようになります。

ヒントのテキストサイズを変更する方法はありますか?

4

2 に答える 2

5

最終的なヒント サイズ/フローティング ラベル サイズの変更は、スタイルを介して可能でありSetHintTextAppearance、次のようなものを使用して呼び出します:-

_nativeView.SetHintTextAppearance(App6.Droid.Resource.Style.MyTextInputLayout);

MyTextInputLayout次の行に沿ったものはどこにありますか:-

<style name="MyTextInputLayout" parent="@android:style/TextAppearance">
    <item name="android:textColor">@color/blue</item>
    <item name="android:textSize">44sp</item>
</style>

ただし、textSizeこのスタイルの from は、テキストの入力を開始したときに、最終的な宛先にのみ適用されます。

私が見ることができるものから、オブジェクトのプロパティを含めて、残念ながら現時点ではヒントの開始フォントサイズを変更できないようです?

as が公開されている場所で、そこでEditText変更することができます。そのHint部分はそれによってまったく処理されず、代わりに によって処理されますTextInputLayout。特にHint.

于 2016-02-08T11:05:10.260 に答える
2

文字列リソースにサイズを設定することでそれを行うことができます。

例えば:

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

次に、XMLに次のように記述します

android:hint="@string/edittext_hint"

これにより、ヒントのテキストは小さくなりますが、入力テキストの元のサイズになります。

またはこのように:

MYEditText.addTextChangedListener(new TextWatcher(){

            @Override
            public void afterTextChanged(Editable arg0) {
                // TODO Auto-generated method stub

            }

            @Override
            public void beforeTextChanged(CharSequence arg0, int arg1,
                    int arg2, int arg3) {
                // TODO Auto-generated method stub

            }

            @Override
            public void onTextChanged(CharSequence arg0, int start, int before,
                    int count) {
                if (arg0.length() == 0) { 
                    // No entered text so will show hint
                    editText.setTextSize(TypedValue.COMPLEX_UNIT_SP, mHintTextSize);
                } else {
                    editText.setTextSize(TypedValue.COMPLEX_UNIT_SP, mRealTextSize);
                }
            }
    });
于 2016-02-04T14:31:48.590 に答える