我是Android应用开发的新手。我想更改我的应用程序的字体。 我想知道通过XML和Java更改字体的不同方法。 想要改变的字体: 1.TextView 2.RadioButton 3.EditText 4.CheckBox等。
答案 0 :(得分:3)
右键点击资源并创建一个文件夹字体。
下载.ttf文件,即fontName.ttf并粘贴到fonts文件夹中。
现在你必须做主要的事情。在你的包中创建一个类。
此课程适用于TextView
public class Railway_Regular extends TextView {
public Railway_Regular(Context context, AttributeSet attrs) {
super(context, attrs);
this.setTypeface(Typeface.createFromAsset(context.getAssets(),"fonts/Raleway-Regular.ttf"));
}}
此课程适用于按钮
public class Railway_Regular_Btn extends Button {
public Railway_Regular_Btn(Context context, AttributeSet attrs) {
super(context, attrs);
this.setTypeface(Typeface.createFromAsset(context.getAssets(),"fonts/Raleway-Regular.ttf"));
}}
此课程适用于EditText
public class Railway_Regular_EdTx extends EditText {
public Railway_Regular_EdTx(Context context, AttributeSet attrs) {
super(context, attrs);
this.setTypeface(Typeface.createFromAsset(context.getAssets(),"fonts/Raleway-Regular.ttf"));
}}
就像这些一样,你可以为你所有的小部件创建类。将fontname.ttf引用到您的类中。
现在,设置textview作为你的字体。
for TextView
<package_name.fonts.Railway_Regular
android:padding="5sp"
android:id="@+id/test_nameDR"
android:layout_marginTop="4dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Details Text"
android:textColor="@color/black"
android:textSize="14sp"/>
按钮的
<package_name.fonts.Railway_Regular_Btn
android:id="@+id/revSubmit"
android:background="@color/greenDeep"
android:layout_marginTop="-54dp"
android:layout_width="match_parent"
android:layout_height="54dp"
android:textColor="@color/white"
android:textSize="16dp"
android:text="SUBMIT REVIEW"
/>
适用于EditText
<package_name.fonts.Railway_Regular_EdTx
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginLeft="30dp"
android:layout_marginRight="30dp"
android:layout_marginTop="15dp"
android:textColorHint="@color/lightgray"
android:textSize="14dp"
android:background="@drawable/edit_text"
android:id="@+id/email_id"
android:hint="Email Id"
android:inputType="textEmailAddress" />
更改字体的第二种方法:
Typeface typeface,typeface2;
typeface = Typeface.createFromAsset(this.getAssets(),"fonts/Raleway-Regular.ttf");
typeface2 = Typeface.createFromAsset(this.getAssets(),"fonts/Raleway-SemiBold.ttf");
button1.setTypeface(typeface);
edit_text1.setTypeface(typeface2);
答案 1 :(得分:0)
您可以使用TTF格式更改字体
tv1=(TextView)findViewById(R.id.textView3);
tv2=(TextView)findViewById(R.id.textView4);
Typeface face= Typeface.createFromAsset(getAssets(), "font/font.ttf");
tv1.setTypeface(face);
Typeface face1= Typeface.createFromAsset(getAssets(), "font/font1.ttf");
tv2.setTypeface(face1);
https://www.tutorialspoint.com/android/android_custom_fonts.htm
http://tekeye.uk/android/examples/android-textview-edittext-font
答案 2 :(得分:0)
您可以使用以下代码进行编程:RadioButton / TextView / Checkbox -
还要确保在Assets文件夹中有相应的.ttf文件。
RadioButton rb = (RadioButton) findViewById(R.id.radiobutton);
Typeface font = Typeface.createFromAsset(getAssets(), "SF_Cartoonist_Hand_Bold.ttf");
rb.setTypeface(font);
或者您可以在TextView中的xml文件中输入 -
从android 4.1 / 4.2 / 5.0开始,可以使用以下Roboto字体系列:
android:fontFamily="sans-serif" // roboto regular
android:fontFamily="sans-serif-light" // roboto light
android:fontFamily="sans-serif-condensed" // roboto condensed
android:fontFamily="sans-serif-black" // roboto black
android:fontFamily="sans-serif-thin" // roboto thin (android 4.2)
android:fontFamily="sans-serif-medium" // roboto medium (android 5.0)
答案 3 :(得分:0)
您可以更改应用程序的字体,以便在项目的assets文件夹下创建fonts文件夹并将TTF放入其中。可能会帮助您How to add external fonts to android application
答案 4 :(得分:0)
您可以使用各种方法更改字体。其中之一是:
Typeface typeface,typeface2;
typeface = Typeface.createFromAsset(this.getAssets(),"fonts/Raleway-
Regular.ttf");
typeface2 = Typeface.createFromAsset(this.getAssets(),"fonts/Raleway-
SemiBold.ttf");
button1.setTypeface(typeface);
edit_text1.setTypeface(typeface2);