Как использовать новый шрифт Google Sans в моем приложении для Android?
Как я могу использовать шрифт, который можно увидеть в новых приложениях Google, таких как Phone, Contact и Google Fit, в моем приложении для Android? Есть ли что-то новое? textAppearance
значение для этого? Вот предварительный просмотр желаемого шрифта (названия):
Как я мог узнать, этот шрифт называется что-то вроде "Google Sans".
Благодарю.
1 ответ
Я тоже кое-где задавался вопросом, как использовать этот шрифт. Я узнал, что вы не можете использовать его на законных основаниях и в служебных целях, но если у вас есть личное использование, вы можете использовать этот ответ.
Я добавляю этот ответ только для того, чтобы ответить на ваш вопрос, но не для того, чтобы все могли использовать этот шрифт!!
Вот шаги:
Загрузите zip-файл шрифта, прочитав мое сообщение в блоге
Создайте каталог с именем font в папке res и добавьте в него файлы TTF.
Теперь добавьте шрифт в TextView, используя этот атрибут:
android:fontFamily="@font/google_sans"
Я уверен, что это будет работать на всех устройствах.
Но еще раз говорю, не используйте его для профессиональной работы!!
Сначала вы должны загрузить желаемые шрифты, убедитесь, что они в ttf
отформатировать, а затем создать папку fonts
расположение этой папки будет
app>src>main>assets>fonts
Скопируйте туда свой шрифт, а затем используйте Calligraphy libray
добавьте следующее в ваш gradle
dependencies {
compile 'uk.co.chrisjenx:calligraphy:2.3.0'
}
А затем в onCreate вашего класса приложения, поместите следующее
public class App extends Application {
@Override
public void onCreate() {
super.onCreate();
CalligraphyConfig.initDefault(new CalligraphyConfig.Builder()
.setDefaultFontPath("your font path")
.setFontAttrId(R.attr.fontPath)
.build()
);
}
}
И ваш файл манифеста должен выглядеть так:
<application
.
.
.
android:name=".App">
И в классе активности поместите этот метод перед onCreate:
@Override
protected void attachBaseContext(Context newBase) {
super.attachBaseContext(CalligraphyContextWrapper.wrap(newBase));
}
Я также задавался вопросом, как использовать это, для личного использования все же. Как ни странно, я использовал это, и он прекрасно работает, хотя у меня есть пиксельное устройство, и я уверен, что это не будет работать на других устройствах. Вот что я использовал для TextView:
android:textAppearance="@android:style/TextAppearance.DeviceDefault.Widget.Button"