2014-09-05 3 views
1

Я просто знаю, что мы можем использовать шрифты только для текста, используя класс TypeFace. Но кто-нибудь может подтвердить мои фотографии.Можно ли использовать шрифты для изображений/значков в Android

Я добавил все мои пользовательские шрифты (.ttf) в папку с ресурсами/шрифтами. Поместили некоторые ImageViews в соответствующее место в моем приложении. И пытаюсь использовать шрифты для установки изображений на них.

У меня есть googled в течение длительного времени, но, к сожалению, не удалось найти удовлетворенный намек или помощь.

Может кто-нибудь, пожалуйста, помогите мне перейти от текущего шага.

+0

Я предполагаю, что у вас есть какой-то микс материал там. TypeFace определяет, как выглядит текст. TextView отображает текст. ImageView показывает изображения. TypeFace не являются изображениями, они не могут быть показаны в ImageView. – Budius

+1

@Budius Спасибо за ответ. Но мой пользовательский шрифт содержит знаковые символы. Каждый персонаж похож на одно изображение. и для каждого символа у меня есть один код. Также я могу получить знаковый символ через этот код. Любая идея.? – Ranjit

+0

Они все еще только шрифт. Вы должны найти код для него и поместить этот код в метод TextView, setText. Например, код разрыва строки - «\ n». – Budius

ответ

2

Разместил несколько ImageViews в соответствующем месте в своем приложении. И пытаюсь использовать шрифты для установки изображений на них.

ImageView принимает фотографии. Каким бы ни был набор пикселей или векторов в шрифте, они не являются изображениями с точки зрения ImageView. Самый простой способ отображения материала из пользовательского шрифта - TextView, хотя вы можете реализовать свой собственный Drawable и попытаться использовать его с помощью ImageView или нарисовать прямо на Canvas (например, в пользовательском виджете).

+0

Я уважаю ваш ответ и удовлетворенный для TextView, но все еще запутался в реализации собственной вытягиваемой части. Не могли бы вы немного объяснить, как это сделать для просмотра изображений. – Ranjit

+0

@RanjitPati: 'Drawable' - абстрактный класс, представляющий« вещи, которые умеют рисовать ». «ImageView» отображает объекты «Drawable», независимо от того, получены ли они из растровых изображений, определяемых XML-типами типов, таких как «ShapeDrawable» и т. Д. Вы можете создать свой собственный подкласс «Drawable», который переопределяет «draw()» и использует 2D рисование API для рендеринга «текста» из вашего шрифта на поставляемом «холсте». – CommonsWare

+0

Получил. Спасибо .. – Ranjit

2

Вы можете использовать шрифт awesome. Импорт андроид-сворачивает/1.0.6 библиотеки баночки из http://repo1.maven.org/maven2/com/joanzapata/android/android-iconify/1.0.6/
и вы можете использовать IconTextView

<IconTextView 
      android:id="@+id/image" 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent" 
      android:padding="10dp" 
      android:text="{fa-mobile}" 
      android:textColor="#9fd46c" 
      android:textSize="30dp" 
      /> 
+0

Спасибо за ваш ответ. Но у меня есть собственный собственный шрифт. +1 для IconTextView. – Ranjit