正如我在问题中提到的,我正在尝试更改EditText中的提示字体。但我似乎无法实现它!
这是我获取用户名的EditText的代码:
<!-- Email Label -->
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:id="@+id/input_username_id"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:layout_marginBottom="20dp">
<EditText
android:id="@+id/input_username"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@color/white"
android:textColorHint="@color/white"
android:hint="@string/hint_username"
android:layout_marginRight="10dp"
android:gravity="right" />
</android.support.design.widget.TextInputLayout>
这是我的java代码:
_usernameText = (EditText) (findViewById(R.id.input_username));
font = Typeface.createFromAsset(getAssets(), "fonts/ir.ttf");
_usernameText.setTypeface(font);
这并没有改变EditText提示的字体。 我尝试了其他解决方案而没有任何改变。 http://chintanrathod.com/customizing-textinputlayout-part-2/
答案 0 :(得分:6)
<强>唐&#39;吨强>
_usernameText = (EditText) (findViewById(R.id.input_username));
font = Typeface.createFromAsset(getAssets(), "fonts/ir.ttf");
_usernameText.setTypeface(font);
<强>不要强>
TextInputLayout usernameTextObj = (TextInputLayout) findViewById(R.id.input_username_id));
font = Typeface.createFromAsset(getAssets(), "fonts/ir.ttf");
usernameTextObj .setTypeface(font);
答案 1 :(得分:1)
由于您的EditText包含在 TextInputLayout 中,因此您必须在TextInputLayout对象引用上设置setTypeface