Малювання тексту в Android додатку

&nbsp

Серед найбільш важливих методів Canvas – ті, які використовуються для малювання тексту Хоча частина функцій Canvas дублюється в інших місцях, це не стосується функцій, повязаних з відображенням тексту Щоб помістити текст в віджет, потрібно використовувати Canvas (або зробити підклас від іншого віджету, що застосовує його)

Canvas надає кілька методів для відображення тексту, які дозволяють вам з різним ступенем гнучкості працювати над розміщенням кожного символу в тексті Методи представлені попарно: один приймає рядок String, а інший – масив char [] У деяких випадках застосовуються додаткові допоміжні методи Наприклад, найпростіший спосіб намалювати текст – це передати координати х і у, в яких починається текст, і Paint, де вказуються гарнітура, колір шрифту та інші атрибути (приклад 94)

У той час як перший метод передає текст через єдиний параметр String, другий метод використовує три параметри: масив char, індекс, що вказує перший символ з цього масиву, з якого потрібно почати малювати текст, і загальна кількість символів тексту, які слід відобразити У прикладі 95 приводиться метод onDraw, що демонструє застосування трьох різних методів відображення тексту Висновок показаний на рис 92

Приклад 95 Три способи малювання тексту

Рис 92 Висновок трьох варіантів малювання тексту

Як бачите, найпростіша з пар – drawText – просто малює текст з точки з заданими координатами З іншого боку, у випадку з drawTextOnPath текст можна малювати вздовж будь-якої лінії Path Лінія, використовувана у прикладі, – проста дуга З тим же успіхом це може бути пряма лінія крива Безьє

Якщо і можливостей drawTextOnPath виявляється недостатньо, Canvas пропонує drawPosText – метод, що дозволяє вказати точне положення кожного символу в тексті Зверніть увагу – при завданні положення символів поперемінно записуються елементи масивів х і у: х \, у \, х2, ..

Джерело: Android Програмування на Java для нового покоління мобільних пристроїв

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*