Попробуйте это:
@Override
public View getView (int position, View convertView, ViewGroup parent) {
View view = super.getView(position, convertView, parent);
if(getItem(position).equals("site3.com"))
{
// do something change color
view.setBackgroundColor (Color.RED); // some color
}
else
{
// default state
view.setBackgroundColor (Color.WHITE); // default coloe
}
return view;
}
Попробуйте книгу дизайна Неразработчика.
По моему опыту, дизайн интерфейса является навыком все сам по себе. Графические дизайнеры способны делать замечательно красивые но абсолютно запутывающие и неприменимые интерфейсы.
У меня есть несколько приемов, которые я использую, но они главным образом включают элементы дизайна кражи из хорошо разработанных приложений и веб-сайтов.
Можно найти много разработчиков, которые могут нарисовать симпатичные изображения, но лучшие имеют практическое знание дизайна интерфейса. Свойственный от этого способность ожидать, как пользователь будет взаимодействовать с приложением, не будучи нанесенным ущерб знанием того, как то приложение, как предполагается, работает.
Относительно Вашего второго вопроса - по-моему, модель программирования WPF и Silverlight допускает более четкое разделение между разработчиком и кодером (т.е. Microsoft Expression Design для разработчиков.NET 3.5 для кодеров, и Microsoft Epxression Blend находится где-нибудь в середине). Это сказанное всегда лучше иметь разработчика UI, который может обработать и дизайн и код.
И только бросить книгу там, что мне нравится - Дизайн Веб-формы Luke Wroblewski - можно получить версию PDF книги для маркеров за менее чем 20$.
Много ссылок здесь на хорошие руководства, но начальный вопрос остается: "Каковы характеристики хорошего разработчика UI?"
Способность просмотреть процесс, систему или практику, и разработать интерфейс, который делает самое большое улучшение его.
Это не о симпатичных интерфейсах, это о какой работы лучше всего в той точной ситуации. И мой совет для становления лучшим разработчиком пользовательского интерфейса состоит в том, чтобы поправиться при помещении себя в пользовательском положении. Мы могли все изменить к лучшему это.
Я предполагаю первую книгу, которую я предложил бы, 'обитатели, выполняют убежище". Требуется немного для вхождения, но это оказывается замечательной книгой.
Онлайн...
w3 имеет некоторые прекрасные идеи о том, как разработать веб-страницы.
Дзэн пальмового кодирования должна требоваться, читая для дизайна gui для pda разработчиков.
это - все об умственной модели конечного пользователя - абстрактная структура, которую они формируют в их умах, который приводит их просто 'знать', что попробовать, поскольку они исследуют Ваш дизайн UI. Как разработчик UI необходимо ясно понять и затем создать ту умственную модель для них - и lotta времена, она будет почти не иметь никакого отношения к составу базовой программной системы. Не удивляйтесь, трудно ли некоторые UIs разработать.
После того как пользователь начинает визуализировать и охватывать эту умственную модель, они начнут исследовать и пробовать вещи на основе логичного заполнения недостающих частей. Хороший дизайн UI вознаградит их ожидаемыми результатами, плохой UI будет stymy и путать, и они будут хотеть выследить Вас.
Как ресурс для разработки пользовательских интерфейсов в Windows, я сказал бы, что Пользовательские Инструкции по Опыту Windows Vista предлагают большие подсказки и примеры при разработке пользовательских интерфейсов.
Это обеспечивает и хорошие и плохие примеры пользовательских интерфейсов от фактических продуктов Microsoft, таким образом, я сказал бы, что это на самом деле довольно объективно и ценное руководство для использования в качестве ссылки при приобретении знаний о дизайне пользовательского интерфейса.
Поскольку это разработано как руководство для приложений Windows Vista, это согласовалось бы хорошо с дизайном UI для WPF, но предлагаемые советы являются достаточно общими, что они могут также быть применены к пользовательским интерфейсам, которые не на базе Windows также.
Я добавлю указатель на связанный вопрос: Спецификация Пользовательского интерфейса Java
Это может быть обсуждено до конца времени лично я полагаю, что дизайн взаимодействия и графический дизайн являются двумя довольно отдельными вещами.
Но они оба перевозят на фургоне быть изученными, по крайней мере, к удовлетворительному уровню. Вы будете, вероятно, никогда be4come действительно сильный в нем, если у Вас не будет "таланта" к нему.
Книга, которую я сам havn't чтение, но я услышал, что многие люди рекомендуют, "Не заставляют меня думать" Steve Krug.
У Joel Spolsky есть простая, изящная идея в "Тесте Удобства использования Прихожей", а также ряд сообщений на дизайне UI.
Сайты, которые я рекомендую для UI и дизайна конкретно:
Интересная вещь об этих сайтах состоит в том, что они только дают примеры UI "do's и don'ts", но создают резервную копию этих примеров с определенными метриками и методами, которые можно на самом деле использовать, чтобы иметь размеры, насколько "хороший" UI. Блог Aza особенно интересен, потому что он проходит свое повторение дизайна на нескольких проектах, он был частью и говорит о "whys" для большого количества решений UI, которые были приняты.
Определенно возможно освоить эти навыки.
То, с чем запутывается много людей, является различием между Искусством и дизайном. Во многих отношениях различие между Искусством и дизайном - то, что Искусство не имеет никакой заниженной функциональности. Это выглядит хорошим..., потому что это делает. С Дизайном обычно существует причина чего-то для существования. Чтобы быть хорошим разработчиком, нужно понять то, что хороший дизайн и как эффективно повредить границы логики для создания чего-то, что работает с как можно меньшей познавательной загрузкой. Если новый дизайн UI позволяет мне выполнять задачу дважды с такой скоростью, как старая затем, это лучше. Если я наслаждаюсь опытом использования нового затем, это лучше.
Конечно, существует артистическая сторона для разработки, и при помощи таланта и креативности, разработчик может сделать лучшие проекты.
Если Вы хотите стать лучше в разработке затем существует две вещи, которые можно сделать:
Я не знаю достаточно об Искусстве, чтобы сказать, можно ли изучить, как стать художником. Все, что я действительно знаю, - то, что все являются естественно творческими; просто необходимо изучить, как освободить его в работе, которая означает изучать, как использовать инструменты эффективно. После того как можно сделать это затем, можно экспериментировать.
Мне нравится думать, что многие постоянные понятия HCI, которые мы используем сегодня, только прибыли из расчетных взглядов; больше артистическое видение оживает.
О Поверхности хорошая книга также.
Тонкость всегда является чем-то хорошим для предостереганий. Резкие градиенты и некоторые цветовые комбинации являются просто болью.
На противоположной стороне, если я нахожу что-то размеченным плохо, поля, которые приводят в порядок не строку, неловкое использование, плохую грамматику, я предполагаю, что программист так же неаккуратен в их внутреннем коде. Я ожидаю больше ошибок в приложениях с плохим UI.
Это несколько датировано, но я наслаждался "Дизайном Повседневных Вещей". Хороший UI заставляет пользователя чувствовать себя хорошо без них когда-либо замечающий.
По моему опыту, намного легче найти, что кто-то делает симпатичные страницы, чем кто-то, кто может сделать действительно удивительные, тонкие, неочевидные варианты использования. Варианты использования, которые не являются существенно входными формами обслуживания таблицы.
Если бы Вы уже там, я предположил бы, что Вы могли бы думать о нахождении gui художника к парной программе с.
Большие средства UI:
Таким образом, все на экране имеет значение. Если это не имеет значения или не влияет на то, что Вы собираетесь сделать затем, это не должно быть там.
Это большую часть времени. Иногда великий разработчик UI изобретает новую интерфейсную модель (теги были изобретены для лучше обработки обмена фотографиями).
Если Вы хотите сделать что-то, Вы хотите выполнить в нем как можно меньше шагов.
Вы не можете уменьшить потребность в хорошем дизайне UI, чтобы, по крайней мере, быть приемлемыми к глазу. Если Вы не можете переварить что-то визуально в очень короткий срок, это не мог бы быть хороший пример хорошего UI.
Я посмотрел бы на любой из edward tufte книги.
Jakob Nielson является хорошим автором также.
По моему опыту, признак хорошего разработчика UI является не обязательно притягательным, do-it-all, isn't-that-cool решение, но обычно один это почти невидимо, потому что это просто работает с очень небольшим количеством справки от пользователя:
Большинство людей может посмотреть на пользовательские интерфейсы (как, они смотрят на что-либо графическое), и скажите, "что взгляды, хорошие" или, "который не выглядит хорошим". То, что обычно делает графического человека способным произвести красивый материал, является готовностью изменить и настроить вещи почти бесконечно и даже вывести все строки усилия, до чего-то, что выглядит хорошим, появляется. У большинства программистов нет терпения для такого рода вещи, таким образом, их пользовательские интерфейсы похожи, они были разработаны кем-то, кто не очень заботился о том, на что они были похожи.
На более глубоком уровне понятие "таланта" или "врожденной способности" чаще всего используется в качестве оправдания даже не попробовать что-то (например, "Я не музыкально талантлив, таким образом, я даже не собираюсь пытаться играть на фортепьяно"). Если Вы хотите стать хорошими в чем-то, необходимо практиковать его много - нет никакой альтернативы.