Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
X.X. класса ImageView Обработка готовых изображений (объекты класса ImageView)
Для просмотра изображений в Студии предназначены элементы
Узнать размеры экрана Для вычисления размеров экрана можно воспользоваться двумя способами. Второй способ более правильный. TextView tvResult = (TextView)findViewById(R.id.textView1); // Узнаем размеры экрана из ресурсовDisplayMetrics displaymetrics = getResources().getDisplayMetrics(); // узнаем размеры экрана из класса DisplayDisplay display = getWindowManager().getDefaultDisplay();DisplayMetrics metricsB = new DisplayMetrics();display.getMetrics(metricsB); tvResult.setText("[Используя ресурсы] \n" + "Ширина: " + displaymetrics.widthPixels + "\n" + "Высота: " + displaymetrics.heightPixels + "\n" + "\n" + "[Используя Display] \n" + "Ширина: " + metricsB.widthPixels + "\n" + "Высота: " + metricsB.heightPixels + "\n");Ресурсы типа Drawable ] Рисуемые (drawable) ресурсы составляют главную концепцию для графики, которая может быть отрисована на экране, и которую можно запросить через такое API как getDrawable(int), или применить к другому XML-ресурсу Android Studio Tips and Tricks IN THIS DOCUMENT 1. Productivity Features 2. Working with IntelliJ 3. Key Commands SEE ALSO 1. Download Android Studio 2. IntelliJ IDEA Android Tutorials 3. IntelliJ FAQ on migrating to IntelliJ IDEA If you're unfamiliar with using Android Studio and the IntelliJ IDEA interface, this page provides some tips to help you get started with some of the most common tasks and productivity enhancements. Productivity Features Android Studio includes a number of features to help you be more productive in your coding. This section notes a few of the key features to help you work quickly and efficiently. Smart Rendering With smart rendering, Android Studio displays links for quick fixes to rendering errors. For example, if you add a button to the layout without specifying the width and height atttributes, Android Studio displays the rendering message Automatically add all missing attributs. Clicking the message adds the missing attributes to the layout. Bitmap rendering in the debugger While debugging, you can now right-click on bitmap variables in your app and invoke View Bitmap. This fetches the associated data from the debugged process and renders the bitmap in the debugger. Figure 1. Bitmap Rendering Output window message filtering When checking build results, you can filter messages by message type to quickly locate messages of interest. с помощью атрибутов наподобие android:drawable и android:icon. Есть несколько разных типов drawable-ресурсов. Bitmap File - растровая картинка, графический файл с расширением.png,.jpg или.gif. Создается с помощью классаBitmapDrawable. Подробнее о ресурсе файла Bitmap
Nine-Patch File - это файл PNG с растягиваемыми регионами, чтобы можно было изменить размеры изображения, базируясь на его содержимом (.9.png). Создается с помощью класса NinePatchDrawable.
Подробнее о ресурсе Nine-Patch
Layer List - список слоев, специальный drawable-ресурс, который управляет массивом из других drawable-ресурсов. Этот список отрисовывается в порядке следования элементов в массиве, так что элемент с самым большим индексом будет нарисован на самом верху. Создается с помощью класса LayerDrawable.
Bitmap-файлом (растровой картинкой) считаются файлы с расширением.png,.jpg или.gif. Android создает Drawable-ресурс для любого такого файла который Вы разместите в папке res/drawable/, при этом имена файлов без расширения образуют идентификатор ресурса (resource ID). Примечание: в именах файлов не должно быть пробелов, заглавных и русских букв, и имя обязательно должно начинаться с буквы. Для обращения к ресурсу может использоваться компилируемый класс BitmapDrawable. На языке Java доступ к ресурсу осуществляется с помощью R.drawable.filename, в XML обращение к ресурсу происходит через @[package:]drawable/filename. Например, картинка сохранена в файл res/drawable/myimage.png, и этот layout XML применит картинку к View: < ImageView android:layout_height="wrap_content" android:layout_width="wrap_content" android:src="@drawable/myimage" /> Следующий код получит картинку как объект Drawable: Resources res = getResources(); Drawable drawable = res.getDrawable(R.drawable.myimage); См. также: • 2D Graphics site:developer.android.com. [ XML Bitmap ] XML bitmap является ресурсом, заданным в XML, который указывает на файл bitmap. В результате появляется алиас (псевдоним) для сырого файла растровой картинки (raw bitmap file). XML может указать дополнительные свойства для картинки, такие как создание иллюзии увеличения глубины цвета (dithering) и мозаика (tiling). Примечание: Вы можете использовать элемент < bitmap > как дочерний в элементе < item >. Например, когда создается список состояний (state list) или список слоев (layer list), Вы можете исключить атрибут android:drawable из элемента < item > и встроить внутрь него < bitmap >, который определит рисуемый объект. XML bitmap размещается в файле res/drawable/filename.xml, при этом имя файла без расширения дает идентификатор ресурса (resource ID). Компилируемый тип данных для ресурса BitmapDrawable. К ресурсу происходит обращение на Java через R.drawable.filename, в XML через @[package:]drawable/filename. Синтаксис:
<?xml version="1.0" encoding="utf-8"? > < bitmap xmlns:android="http://schemas.android.com/apk/res/android" android:src="@[package:]drawable/drawable_resource" android:antialias=["true" | "false"] android:dither=["true" | "false"] android:filter=["true" | "false"] android:gravity=["top" | "bottom" | "left" | "right" | "center_vertical" | android:mipMap=["true" | "false"] android:tileMode=["disabled" | "clamp" | "repeat" | "mirror"] /> Описание элементов < bitmap > задает источник для картинки и её свойства. Атрибуты: xmlns:android строка. Задает пространство имен XML, которое должно быть "http://schemas.android.com/apk/res/android";. Это требуется только если < bitmap > является корневым элементом, и не требуется, когда < bitmap > встроен внутри < item >. android:src рисуемый ресурс, обязательный элемент. Дает ссылку на drawable resource. android:antialias Boolean. Разрешает или запрещает антиалиазинг. android:dither Boolean. Разрешает или запрещает dithering картинки, если картинка не имеет ту же конфигурацию пикселей, что и экран (например ARGB 8888 bitmap, которая должна быть отображена на экране RGB 565). android:filter Boolean. Разрешает или запрещает фильтрацию картинки. Фильтрация используется, когда картинка сжимается или расширяется, чтобы улучшить её внешний вид. android:gravity ключевое слово. Задает гравитацию для картинки. Гравитация показывает, где расположить картинку в её контейнере, если картинка меньше, чем контейнер. Здесь может быть указано одно или большее количество (разделенных операцией ИЛИ '|') следующих констант:
ImageView Общая информация
Общая информация Для загрузки изображения в XML-файле используется атрибут android:src. ImageView является базовым элементом-контейнером для использования графики. Можно загружать изображения из разных источников, например, из ресурсов программы, контент-провайдеров. В классе ImageView существует несколько методов для загрузки изображений: · setImageResource(int resId) — загружает изображение по идентификатору ресурса · setImageBitmap(Bitmap bitmap) — загружает растровое изображение · setImageDrawable(Drawable drawable) - загружает готовое изображение · setImageURI(Uri uri) — загружает изображение по его URI Метод setImageResource() Сначала нужно получить ссылку на ImageView, а затем используется идентификатор изображения из ресурсов:
ImageView imgView = (ImageView) findViewById(R.id.imageView1); imgView.setImageResource(R.drawable.cat); Метод 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")); Метод setImageURI() Берётся URI файла изображения и используется в качестве источника изображения. Этот способ годится для работы с локальными изображениями.
ImageView imgView = (ImageView) findViewById(R.id.imageView1); imgView.setImageURI(URI.parse("file://mnt/sdcard/cat.jpg")); Другие методы Также вам часто придется использовать методы, связанные с размерами и масштабированием: setMaxHeight(), setMaxWidth(), getMinimunHeight(), getMinimunWidth(), getScaleType(), setScaleType().
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2017-01-27; просмотров: 450; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.219.236.62 (0.018 с.) |