Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Работа с наборами изображений. LayerDrawableСодержание книги
Поиск на нашем сайте LayerDrawable представляет набор изображений. Такой набор задается общим элементом <layer-list> и включает в себя несколько элементов item, которые собственно и задают отдельные изображения. Пример 1. Описание LayerDrawable.
Смысл атрибутов элемента item следующий: · android:drawable: представляет ссылку на ресурс изображения · android:id: уникальный идентификатор данного ресурса. Имеет следующую форму:@+id/name. · android:top: смещение с верхнего края в пикселях · android:right: смещение справа в пикселях · android:bottom: смещение снизу в пикселях · android:left: смещение слева в пикселях По умолчанию все ресурсы изображений при выводе на экран масштабируются, заполняя все пространство предназначенного им элемента управления, например, кнопки. Для отмены масштабирования внутри элемента item добавляется дополнительный элемент <bitmap>. Для дополнительного указания положения изображения на поле виджета применяют атрибута android:gravity. Например, для помещения в центре поля, атрибуту надо задать значение "center" Пример 2. Задано несколько изображений в файлах android_red.png, android_green.png и android_blue.png. Необходимо создать ресурс в виде файла layers.xml в папке res/drawable, который бы принимал эти изображения и управлял ими при выводе на экран. Необходимо отменить их масштабирование и обеспечить вывод в центре виджетов.
Постройте ImageView, использующий данный ресурс. Вопросы для проверки знаний. 1. В каком общем элементе задают набор изображений, какой элемент задает описание одного изображения? 2. В чем заключается масштабирование при выводе изображений на управляющий элемпент и как его можно отменить? 10.4. Класс ImageView. Размещение изображений на экране. Класс ImageView задает значения и методы просмотра изображений в Студии. Объекты данного классаявляются базовыми контейнерами для загрузки в них изображений, которые можно брать из разных источников. Для загрузки изображения в XML-файле используется атрибут android:src. С его помощью можно задать отображаемое элементом изображение. Причем в качестве значения атрибута может выступать как файл изображения, так и ресурс drawable и даже обычный цвет. Пример 1. XML-файл, описывающий вертикальный линейный макет, в котором размещено 3 изображения: 1) рисунок-заглавие (программное имя: image1, тип drawable, находится в файле с именем “Name”), 2) полоса (программное имя: image2,), 3) рисунок (программное имя: image3,)hbceyjrе Задание следующее.
Рассмотрим методы загрузки изображений из класса ImageView: - setImageResource(int resId) — загрузка изображения с использованием идентификатора, - setImageBitmap(Bitmap bitmap) — загрузка растрового изображения, - setImageDrawable(Drawable drawable) - загрузка готового изображения, - setImageURI(Uri uri) — загрузка изображения по его URI. Метод setImageResource(). Сначала в хмl-описании исходного изображения надо указать его id и задать программное имя (например, draw1), а также атрибут src (например, android:src="@drawable.my_draw"), затем по программному имени получить с помощью метода findViewById ссылку на объект типа ImageView и передать его свойства в новый объект этого же типа (в примере – ImV1 ), после чего в графическое свойство данного элемента метод setImageResource переносит исходное изображение по его атрибуту android:src ( @drawable.my_draw): ImageView ImV1 = (ImageView) findViewById(R.id. draw1); ImV1.setImageResource(R.drawable.my_draw);
Метод setImageBitmap(). Используется класс BitmapFactory для чтения ресурса изображения в объект Bitmap, а затем в ImageView указывается полученный Bitmap.
ImageView imgView = (ImageView) findViewById(R.id.imageView1); imgView.setImageBitmap(BitmapFactory.decodeResource(this.getResources(), R.drawable.cat));
Метод setImageDrawable(). Если у вас есть готовое изображение, например, на SD-карте, то его можно использовать в качестве объекта Drawable. ImageView imgView = (ImageView) findViewById(R.id.imageView1); imgView.setImageDrawable(Drawable.createFromPath("/mnt/sdcard/cat.jpg"));
Метод setImageResource(). Сначала нужно получить ссылку на ImageView, а затем используется идентификатор изображения из ресурсов:
Метод setImageURI(). Берётся URI файла изображения и используется в качестве источника изображения. Этот способ годится для работы с локальными изображениями. ImageView imgView = (ImageView) findViewById(R.id.imageView1); imgView.setImageURI(URI.parse("file://mnt/sdcard/cat.jpg"));
Другие методы Также вам часто придется использовать методы, связанные с размерами и масштабированием: setMaxHeight(), setMaxWidth(), getMinimunHeight(), getMinimunWidth(), getScaleType(), setScaleType(). Вопросы для проверки знаний. 1. Какие два свойства есть у простых кнопок? 2. Для чего xml-описанию кнопки задается дополнительное свойство android:id? 3. Для чего создается вспомогательный объект класса Button, в который помещается все содержание кнопки, какой метод при этом используется? 4. Какие три метода можно использовать для разработки программного кода функции-обработчика? 5. Для чего в файле activity.main.xml для кнопок задается свойство android:onClick? 6. Какие действия описываются в теле функции-обработчика? 7. Как можно упростить обработку нажатий на кнопки при большом их числе?
|
||||||||
|
Последнее изменение этой страницы: 2017-01-27; просмотров: 596; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.102 (0.008 с.) |