Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Копирование изображений между ImageView
Если вам надо скопировать изображение из одного ImageView в другой, то можно получить объект Drawable через метод getDrawable() и присвоить ему второму компоненту.
ImageView ivSource = (ImageView) findViewById(R.id.sourceImageView); // 1-й компонент с какой-то картинкой ImageView ivTarget = (ImageView) findViewById(R.id.targetImageView); // 2-й компонент без картинки
Drawable drawable = ivSource.getDrawable(); // получим картинку у первого компонента ivTarget.setImageDrawable(drawable); // присвоим второму Примеры В моих статьях можно найти примеры использования ImageView. Toast - всплывающие сообщения (Программное создание ImageView и через разметку). Загрузка картинок с плавными переходами Загрузка изображения с карточки в ImageView Сохранение картинки из ImageView на SD-карту Вращение Анимация пульсации ImageView Анимация вращения через XML Продвинутые приёмы работы с ImageView (Закрытая зона/4-й месяц) Библиотеки CustomShapeImageView - позволяет создавать рамки разных форм. MikeOrtiz/TouchImageView - расширенный вариант ImageView, который поддерживает касания экрана и масштабирование. Реклама
Drawable. Фигуры и градиенты Shape и ShapeDrawable Фигуры являются подмножеством Drawable-ресурсов. Данный вид ресурсов на основе класса ShapeDrawable позволяет описывать простые геометрические фигуры, указывая их размеры, фон и контур с помощью тега <shape>. Можно создавать ресурсы фигур на основе стандартных фигур вроде прямоугольника, эллипса, линии. Для использования ресурсов фигур нужно создать в подкаталоге res/drawable XML-файл, в котором будет присутствовать тег <shape>, который в свою очередь может содержать дочерние элементы <corners>, <gradient>, <padding>, <size>, <solid>, <stroke>. Имя файла без расширения будет служить идентификатором (ID): R.drawable.filename в Java-коде и @[package:]drawable/filename в XML-файлах. Элементы фигуры <shape> Фигура. Является корневым элементом в XML. · xmlns:android - обязательный атрибут со строкой "http://schemas.android.com/apk/res/android" · android:shape - задаёт тип фигуры: rectangle (прямоугольник, заполняющий элемент, является фигурой по умолчанию), oval (овал), line (линия, требуется также наличие элемента <stroke> для задания ширины линии), ring (окружность, для данной фигуры можно использовать атрибуты android:innerRadius, android:innerRadiusRatio, android:thickness, android:thicknessRatio, android:useLevel) · <corners> - создаёт закругленные углы для фигуры. Только для прямоугольника. Возможные атрибуты: android:radius, android:topLeftRadius, android:topRightRadius, android:bottomLeftRadius, android:bottomRightRadius
· <gradient> - задаёт градиентную заливку для фигуры. Возможные атрибуты: android:angle, android:centerX, android:centerY, android:centerColor, android:endColor, android:gradientRadius, android:startColor, android:type, android:useLevel · <padding> - отступы. Возможные атрибуты: android:left, android:top, android:right, android:bottom · <size> - размеры фигуры. Возможные атрибуты: android:height, android:width · <solid> - сплошной цвет для фигуры. Возможные атрибуты: android:color · <stroke> - контур фигуры. Возможные атрибуты: android:width, android:color, android:dashGap (расстояние между черточками), android:dashWidth (длина пунктирной черточки) Rectangle (Прямоугольник) shape_rect.xml - Атрибут android:shape здесь необязателен: rectangle — это значение по умолчанию. <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape android:shape="rectangle"> <solid android:color="#0377BE"/> </shape> </item></selector>Пример с градиентным прямоугольником в качестве разделителя Создадим файл separator.xml: <?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <gradient android:angle="0" android:centerColor="#47CF4F" android:endColor="#000000" android:startColor="#000000" /> </shape>В разметке приложения добавим код: <TextView android:id="@+id/tvSource" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="TextView" /> <View android:layout_width="wrap_content" android:background="@drawable/separator" android:layout_height="1dp" /> <TextView android:id="@+id/tvResult" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="TextView" /> <View android:layout_width="wrap_content" android:background="@drawable/separator" android:layout_height="3dp" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button" />У первого разделителя ширина 1dp, у второго - 3dp. Получили красивую полоску. У прямоугольников можно скруглить углы при помощи тега corners rectangle_rounded_all.xml <?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape> <solid android:color="#B902B0"/> <corners android:radius="10.0dip" /> </shape> </item></selector>Можно закруглить углы по отдельности: rectangle_rounded_some.xml <?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape> <solid android:color="#EC6118"/> <corners android:bottomRightRadius="0.1dp" android:bottomLeftRadius="7dip" android:topLeftRadius="7dip" android:topRightRadius="0.1dp"/> </shape> </item></selector>Oval (Эллипс)
shape_oval.xml <?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape android:shape="oval"> <solid android:color="#FCD366"/> </shape> </item></selector>Другой вариант с пунктиром: <?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval" > <gradient android:centerColor="#FFFF00" android:centerX="0.5" android:centerY="0.5" android:endColor="#00FF00" android:gradientRadius="100" android:startColor="#FF0000" android:type="radial" /> <stroke android:dashGap="6dip" android:dashWidth="8dip" android:width="5dip" android:color="#000000" /> </shape>Ring (Кольцо) shape_ring.xml - Для кольца имеются дополнительные атрибуты: InnerRadius Внутренний радиус InnerRadiusRatio Отношение между внешним и внутренним радиусами. По умолчанию равно 3 Thickness Толщина кольца (т.е. разница между внешним и внутренним радиусами) ThicknessRatio Отношение ширины кольца к его толщине. По умолчанию равно 9 <?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape android:shape="ring" android:innerRadiusRatio="3" android:thicknessRatio="5.333"> <solid android:color="#7DBE15"/> </shape> </item></selector>Line (Горизонтальная линия) shape_line.xml - Линия может быть только горизонтальной
|
||||||
Последнее изменение этой страницы: 2017-01-27; просмотров: 453; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 13.58.112.1 (0.01 с.) |