1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/632835821-RTextView

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

RTextView

欢迎使用 RTextView

1. Особенности

  1. RTextView позволяет вам больше не писать и не управлять большим количеством файлов селекторов (это было слишком неприятно).
  1. RTextView изменил размер изображений drawableLeft/drawableXXX, теперь вы можете напрямую реализовать функцию текста с изображением, используя только LinearLayout + ImageView + TextView, и вы также можете установить размер значка.
  1. RTextView может напрямую устанавливать различные эффекты скругления: все четыре угла, один угол, даже эллипс — всё это легко реализовать. Эффекты рамки и пунктирной рамки можно настроить с помощью одного свойства.
  1. RTextView не только позволяет определить фоновый цвет, рамку и состояние по умолчанию, но и позволяет совместно настроить все состояния при нажатии и клике.
  1. RTextView поддерживает изменение цвета при нажатии: фона, рамки, текста и drawableLeft/xxx (это здорово).

2. Примеры

Примеры эффектов не ограничиваются этим, для получения дополнительной информации обратитесь к соответствующим свойствам.

3. Описание свойств

Разработчики могут выбирать соответствующие функции в зависимости от своих потребностей.

Свойство Описание
corner_radius Скругление Все углы
corner_radius_top_left Закругление Левый верхний угол
corner_radius_top_right Закругление Правый верхний угол
corner_radius_bottom_left Закругление Нижний левый угол
corner_radius_bottom_right Закругление Нижний правый угол
border_dash_width Ширина пунктирной линии рамки
border_dash_gap Промежуток пунктирной линии рамки
border_width_normal Толщина рамки по умолчанию
border_width_pressed Толщина рамки при нажатии
border_width_unable Толщина рамки в недоступном состоянии
border_color_normal Цвет рамки по умолчанию
border_color_pressed Цвет рамки при нажатии
border_color_unable Цвет рамки в недоступном состоянии
background_normal Фоновый цвет по умолчанию
background_pressed Фоновый цвет при нажатии
background_unable Фоновый цвет в недоступном состоянии
text_color_normal Цвет текста по умолчанию
text_color_pressed Цвет текста при нажатии
text_color_unable Цвет текста в недоступном состоянии
icon_src_normal Значок по умолчанию
icon_src_pressed Значок при нажатии
icon_src_unable Значок в недоступном состоянии
icon_height Высота значка
icon_width Ширина значка
icon_direction Направление значка {слева, сверху, справа, снизу}

4. Использование

4.1 Gradle (используйте последнюю версию в соответствии с историей обновлений)

compile 'com.ruffian.library:RTextView:1.0.0'

4.2 XML-использование

<com.ruffian.library.RTextView
    android:layout_width="100dp"
    android:layout_height="100dp"
    android:gravity="center"
    android:text="Текстовый элемент управления"

    //Фоновый цвет соответствует трём состояниям
    rtv:background_normal="#3F51B5"
    rtv:background_pressed="#FF450F21"
    rtv:background_unable="#c3c3c3"

    //Цвет рамки соответствует трём состояниям
    rtv:border_color_normal="#FF4081"
    rtv:border_color_pressed="#3F51B5"
    rtv:border_color_unable="#c3c3c3"

    //Толщина рамки соответствует трём состояниям, обычно устанавливается одинаковое значение
    rtv:border_width_normal="3dp"
    rtv:border_width_pressed="4dp"
    rtv:border_width_unable="5dp"

    //Пунктирная рамка 1. Ширина пунктира 2. Интервал пунктира
    rtv:border_dash_width="10dp"
    rtv:border_dash_gap="4dp"

    //Радиус скругления 1. Один радиус для всех углов 2. Четыре разных радиуса
    //xml:  Если через xml установлено corner_radius, то corner_radius_xxx не действует
    //java: Если через java-код установлено corner_radius_xxx, то corner_radius не действует
    rtv:corner_radius="10dp"
    rtv:corner_radius_top_left="10dp"
    rtv:corner_radius_bottom_left="15dp"
    rtv:corner_radius_bottom_right="20dp"
    rtv:corner_radius_top_right="25dp"

    //Значок drawableXXX соответствует трём состояниям
    rtv:icon_src_normal="@mipmap/icon_phone_normal"
    rtv:icon_src_pressed="@mipmap/icon_phone_pressed"
    rtv:icon_src_unable="@mipmap/icon_phone_unable"

    //Направление значка {вверху, внизу, слева, справа}
    rtv:icon_direction="top"

    //Ширина/высота значка
    rtv:icon_height="30dp"
    rtv:icon_width="30dp"

    //Цвет текста соответствует трём состояниям
    rtv:text_color_normal="#c3c3c3"
    rtv:text_color_pressed="#3F51B5"
    rtv:text_color_unable="#FF4081"
    />

4.3 Все свойства предоставляют методы get/set на Java

	RTextView textView=(RTextView) findViewById(R.id.text1);
    //set...
    textView.setIconNormal(getDrawable(R.mipmap.ic_launcher))
            .setIconHeight(10)
            .setIconWidth(20)
            .setIconDirection(RTextView.ICON_DIR_TOP);
    //get...
    int iconHeight=textView.getIconHeight();

5. История версий

v1.0.0 2017.09.07 Выпуск первой версии

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

На основе TextView: 1. напрямую задать фон селектора; 2. напрямую задать размер drawableLeft; 3. сделать скруглённые углы, округлить форму, а также реализовать изменение цвета фона/границы/текста в зависимости от состояния. Развернуть Свернуть
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/632835821-RTextView.git
git@api.gitlife.ru:oschina-mirror/632835821-RTextView.git
oschina-mirror
632835821-RTextView
632835821-RTextView
master