Исследование методов построения пользовательских интерфейсов
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
нием.
.4.1 Стили и шаблоны
Стили и шаблоны уникальная возможность XAML, позволяющая сочетать в себе мощность стилей CSS и гибкость шаблонов графических программ. Стиль может содержать в себе полное описание всех интерфейсных элементов и их составляющих и позволяет гибко управлять внешним видом интерфейса.
Стиль может содержаться как в самом файле проекта, так и в отдельном файле, содержащем только стили. Второй вариант предпочтительней, т.к. позволяет иметь столько стилей для приложения, сколько может позволить ваше воображение.
.4.2 Создание пользовательских интерфейсных элементов
Есть два пути для создания элементов: можно писать элементы XAML-кодом или же можно воспользоваться Blend. Второй способ проще, нагляднее и быстрее.
Для создания пользовательского вида интерфейсного элемента в Blend имеется возможность как редактирования существующего, так и создания нового элемента.
Разметка
Разметка документа осуществляется специальными панелями (Layout Panels), которые могут включать в себя как сами панели, так и интерфейсные элементы. Доступ к панелям осуществляется на панели инструментов и поддерживает функцию Группировки (Group).
Панели разметки могут быть следующих типов:
Холст (Canvas panel)
Стыковочная панель (Dock panel), содержимое панели может пристыковываться к заданным сторонам панели
Таблица (Grid panel), содержимое находится внутри ячеек таблицы
Стопка (Stack panel), содержимое группируется в последовательном порядке по горизонтали или вертикали
Панель с возможностью скрытия содержимого (Wrap panel) - если содержимое не помещается внутри панели.
Расположение объектов, привязки и выравнивание
Как известно, внешний вид эстетичного интерфейса определяется месторасположением формирующих его элементов, а также наличием пустого пространства (отступов) и пропорциональным строем его составляющих, т.е. то, что зовется композицией. Blend обладает рядом гибких инструментов, помогающих дизайнеру точно располагать и компоновать элементы интерфейса.
Рисунок 10 - Визуальная привязка
Для визуальной привязки используется инструмент Snap (Рисунок 10), который имеет уникальное предопределяемое свойство показывать заданный размер границы между элементами (Default margin и Default padding). Эта функция ускоряет расположение элементов в форме: достаточно просто выбросить элемент на плоскость и Blend сам покажет нужные для него отступы.
Визуальная привязка позволяет точно позиционировать элементы относительно друг друга, соблюдая заданные размеры границ между элементами, и показывает, как эти границы, так и местоположение элементов относительно друг друга и базовую линию текста (для элементов, содержащих текст).
Выравнивание (Align) элементов происходит относительно Панели разметки (Layout Panels), в которой находятся элементы. Если элементы находятся внутри Таблицы (Grid Panel), то появляется возможность управлять поведением элементов при изменении размеров окна приложения.
Раздел 2.5 Сравнительный анализ Expression Blend
.5.1 Blend и классические способы создания прототипов интерфейсов
Классическое Прототипирование - это, в первую очередь, проектирование взаимодействия, а создание внешнего вида приложения уже вторично, хотя и немаловажно.программа для создания уже готовых интерфейсов, т.е. дизайнер выдает программистам готовый интерфейс, не требующий их вмешательства в графическое решение. Программист только подключает интерфейс к процедурному коду. Данная концепция является достаточно новаторской, как для дизайнеров интерфейсов, так и для программистов.
С точки зрения дизайнера интерфейсов, Blend является дополнительным инструментом при проектировании интерфейсов, так как проектирование интерфейсов это не только внешний вид, а в первую очередь взаимодействие программы и человека, а инструменты, позволяющие это делать в Blend, малоразвиты или отсутствуют совсем.
С точки зрения проектировщика взаимодействия возникают следующие проблемы при работе с MS EB:
Blend должен позволять гибко управлять анимацией. Должен ли iенарии трансформаций создавать именно проектировщик, а не дизайнер, ведь только проектировщик знает в деталях поведение будущего продукта. Идеально, если Blend будет содержать некий специальный язык, чтобы свойства трансформации считались по формулам, заданным проектировщиками. Также необходима возможность управлять большим количеством iенариев трансформации, группировать их и осуществлять поиск по ним, строить зависимости iенариев друг от друга.
Пространство имен объектов, которое удобно для проектировщика, может оказаться неудобным для разработчика, и наоборот. Как задать определенный стандарт на имена элементов интерфейса?
Не все изменения наглядны, следовательно, у всех участников будет уходить много времени на документирование этих изменений во внешней коммуникационной среде. Должна быть возможность наглядной отладки любого iенария, т.е. должны быть хорошие средства контроля над результатом работы.
Каким образом осуществлять глубинные изменения экранных объектов? При итеративной разработке постоянно возникает необходимость в изменении внешнего вида и поведения экранных объектов. Blend должен поддерживать рефакторинг (контроль корректности каждого изменения объектов XAML). Одно из критических требований к прототипам и к системам редактирования пользовательского интерфейса это поддержка итеративных изменений.
Заключение