Xin chào, tôi đang viết một ứng dụng Android. Và tôi muốn phông chữ roboto trong đó không phân biệt phiên bản của điện thoại. Có cách nào để làm điều đó?Phông chữ Roboto trong ứng dụng Android của tôi
Xin cảm ơn, Rahim.
Xin chào, tôi đang viết một ứng dụng Android. Và tôi muốn phông chữ roboto trong đó không phân biệt phiên bản của điện thoại. Có cách nào để làm điều đó?Phông chữ Roboto trong ứng dụng Android của tôi
Xin cảm ơn, Rahim.
Vâng tại sao không, bạn có thể nhận được các phông chữ Roboto:
phép nói rằng bạn muốn thay đổi font chữ của một cái nhìn văn bản:
Typeface tf = Typeface.createFromAsset(getAssets(),
"fonts/Roboto-Black.ttf");
TextView tv = (TextView) findViewById(R.id.FontTextView);
tv.setTypeface(tf);
Bạn có thể áp dụng các kiểu cụ thể trong Android cho phép bạn thay đổi phông chữ, v.v. Kiểm tra liên kết này đến trang web dành cho nhà phát triển Android. Styles and Themes
Tại sao điều này lại bị bỏ phiếu? – tier1
Hãy thử liên kết này http://www.barebonescoder.com/2010/05/android-development-using-custom-fonts/
Thiết lập thuộc tính kiểu chữ của điều khiển bạn đang nhắm mục tiêu đến serif ... và cho các tập tin phông chữ tôi khuyên bạn nên sử dụng TTF, nó đã làm việc cho tôi trong quá khứ
Cũng thử những liên kết này
http://techdroid.kbeanie.com/2011/04/using-custom-fonts-on-android.html
Để đặt phông chữ trong XML là nỗ lực vừa phải hơn nhưng có lợi thế là có thể xem trước phông chữ bên trong tab bố cục đồ họa của ADT của trình soạn thảo bố cục XML. Một lần nữa, trước tiên hãy bao gồm tệp .ttf phông chữ tùy chỉnh của bạn trong thư mục nội dung của ứng dụng.
Tạo một lớp tùy chỉnh TextView:
public class TypefacedTextView extends TextView
{
public TypefacedTextView(Context context, AttributeSet attrs)
{
super(context, attrs);
// Typeface.createFromAsset doesn't work in the layout editor. Skipping ...
if (isInEditMode())
{
return;
}
TypedArray styledAttrs = context.obtainStyledAttributes(attrs, R.styleable.TypefacedTextView);
String fontName = styledAttrs.getString(R.styleable.TypefacedTextView_typeface);
styledAttrs.recycle();
if (fontName != null)
{
Typeface typeface = Typeface.createFromAsset(context.getAssets(), fontName);
setTypeface(typeface);
}
}
}
Bây giờ bao gồm TypefacedTextView tùy chỉnh này trong Layouts XML của bạn chỉ cần thêm thuộc tính namespace XML của bạn dưới đây Android namespace XML thuộc tính:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:your_namespace="http://schemas.android.com/apk/res/com.example.app"
... />
Và sử dụng của bạn TypefacedTextView giống như một TextView bình thường trong XML nhưng với thẻ tùy chỉnh của riêng bạn, hãy nhớ đặt phông chữ của bạn:
<com.example.app.TypefacedTextView
android:id="@+id/list_item_entry_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:minHeight="48dp"
android:textColor="#FF787878"
your_namespace:typeface="Roboto-Regular.ttf" />
Xem bài đăng trên blog của tôi để biết thêm thông tin: http://polwarthlimited.com/2013/05/android-typefaces-including-a-custom-font/
404 này trên liên kết trong câu trả lời – harmanjd
Có cách nào để thiết lập thuộc tính kiểu chữ này trong chính XML không? Hay đơn giản hơn, trong chính AndroidManifest.xml, để sử dụng trên toàn bộ ứng dụng? – Rahim
Tôi cũng không tìm thấy cách nào để thực hiện việc này, vì vậy tôi đã kết thúc với http://stackoverflow.com/questions/9797872/use-roboto-font-for-earlier-devices/10563831#10563831 – Arnaud