I work with Kotlin and android studio
<com.google.android.material.textfield.TextInputLayout
android:hint="شماره تلفن همراه"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense"
android:layout_marginStart="5dp"
android:layout_marginEnd="5dp"
android:layout_marginTop="5dp"
app:shapeAppearanceOverlay="@style/button4"
app:boxStrokeColor="#4E4A4A"
app:boxStrokeWidth="1dp"
app:prefixText="+98"
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.google.android.material.textfield.TextInputEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="phone"
android:id="@+id/phoneNumber"
android:ems="10"
android:textSize="13sp"
android:textColor="@color/black"
android:textStyle="normal"
/>
</com.google.android.material.textfield.TextInputLayout>
I want to set a font for the hint (شماره تلفن) and I have a font in res/font ;
how can I set that font?
2
Answers
Super easy.
In the XML of your
TextInputEditText
addandroid:fontFamily="font-family"
.If this doesn’t help, please let me know and I’ll provide more support, happy coding!
Method 1 – By using fontFamily atrribute
Method 2 –
To change the font of the hint in a TextInputLayout, you can use the setTypeface() method on the TextInputLayout itself. Here’s how you can achieve this:
Add Font File:
Place your custom font file (e.g., myfont.ttf) in the res/font folder of your Android project.
Programmatically Set Font for Hint:
In your activity or fragment code, find the TextInputLayout by its ID and set a custom font for the hint:
Replace "font/myfont.ttf" with the actual path to your font file.
XML Layout:
Your XML layout remains the same, just include the TextInputLayout and TextInputEditText as you’ve defined:
By using the setTypeface() method on the TextInputLayout, you can change the font of the hint while keeping the user-entered text in the default font.
Hope these methods resolve your problem. Let me know if any other help required, I will be more than happy to help.