2012-02-24 4 views
1

Мне интересно, что было бы лучшей практикой для Android. Нарисовать или загрузить изображение? Например, я хочу, чтобы в нем был зеленый круг, заполненный текстом 25. -У меня есть в файле изображения .PNG и просто загружайте его в placeview, когда мне это нужно? ИЛИ должен ли я загрузить его на Java (определив позицию в java и загрузив ее из папки res)?Должен ли я нарисовать или загрузить изображение?

ИЛИ Должен ли я нарисовать его (нарисуйте круг, заполните цвет, добавьте текстовое поле внутри)?

На другой ноте, чтобы иметь птичку, то, что мне посоветуете делать? Я даже не знаю, как сделать, что

мне очень нужна ваша помощь в этом Спасибо большое

ответ

2

Я бы фактически утверждал, что есть один правильный ответ. Вы должны использовать фигуру с установленным цветом и текстовым представлением внутри нее. Легко сделать то, что вы описали в xml, см. Пример: Oval Gradient in Android для примера (есть число, если вы google для андроидных фигур). Это будет меньше процессора/памяти, чем загрузка растрового изображения, и, что более важно, он будет работать и хорошо выглядеть при каждом размере экрана. Поскольку добавленный бонус пользователя изменил размер шрифта по умолчанию, textView/shape может уважать это, а статическое изображение не может. Просто установите фон вашего TextView в форму, пригодную для рисования (либо в xml, либо программно).

Чтобы получить растровое изображение, чтобы хорошо выглядеть на нескольких устройствах (необходимо для разработки Android), вам понадобится несколько разных версий одного и того же растрового изображения с разными разрешениями (XHDPI, HDPI, MDPI ... и т. Д.).

Отметки более твердые, поскольку они не соответствуют стандартной форме. Те, кому, вероятно, придется сделать pngs.

+0

Спасибо за ответ, и я думаю, что прямой ответ - это то, что я ищу. Однако, когда я сказал ничью, я не хотел рисовать его из растрового изображения.Я имел в виду актуальные круги рисования на Java (вроде как функциональность лакокрасочного покрытия). Поэтому я не уверен, какой из них лучше. Я никогда не был знаком с формами в xml для Android. Я это проверю. Доступно ли это для 2.1? – Snake

+0

ShapeDrawables существуют с первой версии http://developer.android.com/reference/android/graphics/drawable/ShapeDrawable.html –

+0

Так что я могу создать и xml, у которого есть форма, которую я хочу. Тогда я могу добавить текстовое представление в XML-файле макета с формой, как мой мой backgorund drawble, правильно? Здесь нет джавы, хорошо. Если это так, еще одна вещь Monkeyless, я хочу, чтобы эта фигура (с текстом) была скрыта, пока пользователь не нажмет что-то. Как я могу сначала скрыть эту форму/текст? Я предпочитаю в XML, но если не так, как я могу сделать это скрытым в коде.THANK YOU – Snake

1

Я не эксперт по разработке Android, но, увидев ваш вопрос, я немного прочитал и наткнулся на эту статью на , отображая изображения с андроидом, что имеет значение и содержит код, который поможет вам. http://www.javacodegeeks.com/2011/07/android-game-development-displaying.html

Что касается вашего изображения галочки, почему бы вам просто не пойти в Photoshop или рисовать, а использовать инструмент линии, чтобы нарисовать галочку, а затем заполнить ее цветом и сохранить ее как .png?

+0

Мне нравятся ваши ссылки и определенно полезны для проверки. Thumbs up для ответа – Snake

2

Это зависит от того, что вы хотите сделать.

Рендеринг растрового изображения будет быстрее, но вы не сможете манипулировать им после его рисования.

Итак, для вашего случая у вас есть зеленый круг с 25 письменными. Вам также нужен зеленый шар с 23, а другой с 24 в нем? Как насчет других цветов?

Это действительно зависит от величины вариации, в которой вы нуждаетесь. В определенный момент накладные расходы на использование десятков изображений не будут стоить эверта чертежа на холст. Или, в зависимости от того, насколько сложны изображения, это будет.

Вопрос не в том, «Что лучше?», А вместо этого: «Что лучше для чего мне нужно?»

+0

Благодарю вас за ответ .. kinda смутил меня больше, но хорошо знать детали, которые мне нужно принести, когда спрашивают в следующий раз – Snake

Смежные вопросы