Articles of android custom view

OnMeasure (), вызванное ТОЧНО и размер спецификации 0

При отладке настраиваемого представления override onMeasure() я вижу, что есть несколько вызовов этого метода. Я имею дело только с высотой представления, оставляя спецификацию ширины неизменной. В какой-то момент я получаю вызов с (высотой) MeasureSpec getMode() == EXACTLY и getSize() == 0. Это не имеет смысла и противоречит документации Android : MeasureSpecs are used to push […]

Android – Canvas.clipRect () – Удаление существующего клипа

У меня есть объект Canvas , в какой-то момент я устанавливаю клип, чтобы я мог рисовать это «окно / раздел», не беспокоясь о переполнении в другие части холста. После того, как я закончил рисовать в «окне», я хочу удалить эту область клипа, которая, как мне кажется, не подходит. Нет функции удаления клипа, когда я пытаюсь […]

Чтение атрибутов Android на моем пользовательском представлении

Я создал собственный класс макета (расширяет RelativeLayout) и имеет TextView как часть макета. Я хочу применить свойства, объявленные в XML, к моему TextView, все равно я могу прочитать атрибуты android (не мои пользовательские атрибуты, эта часть уже позаботилась). Например, в моем XML я буду иметь это: <my.custom.MyLayout android:layout_width="100dp" android:layout_height="20dp" android:text="SomeText" /> Я хочу прочитать текстовый […]

Сохранение / восстановление состояния пользовательских представлений в android

Я внедрил пользовательские представления для EditText, как вы можете видеть на изображении ниже: Теперь это пользовательское представление включает в себя функцию перелистывания, редактирования, поворота, перетаскивания и изменения размера. Я сохраняю это пользовательское представление в растровом формате в проводнике. Проблема в том, что я хочу отредактировать его, и я хочу восстановить детали пользовательского представления и получить […]

Обратный вызов после того, как все дочерние представления из XML были добавлены в ViewGroup?

Я писал пользовательскую ViewGroup и столкнулся со следующей проблемой: ViewGroup следует использовать, указав свойства только в XML. Тем не менее, я хочу сделать внутреннюю инициализацию в коде после создания ViewGroup и добавления всех его дочерних View из XML (т. ViewGroup Когда инфлятор макета добавил все дочерние View s ViewGroup указанные в XML) , Все, что […]

Как применить прозрачность (фокус?) ON нажатие любого пункта (как это делает Google)?

В приложении «Google Play» мы видим, что если вы нажмете на какой-либо элемент (LinearLayout, button, imageview, textview …), на нем будет синее пальто. Быть выше – это не простой фон с андроидом: state_pressed = "true" android: state_focused = "true" … Любая идея, как применить этот эффект? Например, у меня есть LinearLayout с несколькими изображениями и […]

Настройте ProgressBar, чтобы стать термометром

Как настроить ProgressBar, чтобы он выглядел как термометр? С возможностью изменения цвета. Мое предложение состояло в том, чтобы повернуть прогресс на 90 °, чтобы стать вертикальным, а затем наложить изображение пустого термометра, но это плохое и грязное решение. Я думаю, что лучше всего будет либо расширять класс View, либо ProgressBar, и настроить метод draw, но […]

Создать пользовательскую панель с 5 различными цветами

Я хочу создать пользовательский view для отображения 5 разных цветов в качестве прикрепленного изображения: Кто-нибудь знает, как реализовать вышеуказанное view ? Благодарю.

Передача id смежного вида в xml в пользовательское представление и извлечение его в конструкторе пользовательского представления

Ниже мой xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:padding="5dp" xmlns:app="http://schemas.android.com/apk/res/com.infibeam.allthingsd.apps.spinr"> <com.asyncimagewidget.AsyncImageView android:id="@+id/discover_list_icon" android:layout_width="130dp" android:layout_height="130dp" android:layout_alignParentLeft="true" android:layout_centerHorizontal="true" app:progressId="@+id/asyncLoadingProgress" /> <ProgressBar android:id="@+id/asyncLoadingProgress" android:layout_width="130dp" android:layout_height="130dp" android:layout_alignParentLeft="true" android:layout_centerHorizontal="true" /> </RelativeLayout> Ты можешь видеть Приложение: progressId = "@ + идентификатор / asyncLoadingProgress" Какой пользовательский атрибут я определил в attrs.xml, который выглядит следующим образом. <resources> <declare-styleable name="AsyncImageView"> <attr name="defaultSrc" format="reference" /> <attr […]

Does Canvas.getClipBounds выделяет объект Rect?

В моем пользовательском представлении я изучаю использование Canvas.getClipBounds () для оптимизации моего метода onDraw (чтобы я рисовал только то, что абсолютно необходимо каждый раз, когда он вызывается). Тем не менее, я все еще хочу абсолютно избежать создания какого-либо объекта … Поэтому мой вопрос: getClipBounds() выделяет новый Rect каждый раз, когда он вызывается? Или это просто […]

Intereting Posts