Android studio рамка вокруг textview

Как поставить рамку вокруг текстового поля Android?

Можно ли нарисовать рамку вокруг текстового представления?

21 ответ

Вы можете установить фигуру, которую можно рисовать (прямоугольник), в качестве фона для представления.

И прямоугольник drawable back.xml (поместите в папку res / drawable):

Вы можете использовать @android:color/transparent , чтобы сплошной цвет имел прозрачный фон. Вы также можете использовать отступы, чтобы отделить текст от границы. для получения дополнительной информации см .: http://developer.android.com/guide/ темы / ресурсы / drawable-resource.html

Самый простой способ — добавить представление для TextView. Пример нижней границы:

Для границ других направлений отрегулируйте положение разделителя.

Я решил эту проблему, расширив текстовое поле и нарисовав границу вручную. Я даже добавил, что вы можете выбрать, будет ли граница пунктирной или пунктирной.

И класс границы:

Надеюсь, это кому-то поможет 🙂

Самое простое решение, которое я нашел (и которое действительно работает):

Я просто смотрел на аналогичный ответ — это можно сделать с помощью Stroke и следующего переопределения:

Установить границу можно двумя способами. Один из них можно рисовать, а второй — программный.

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

Я нашел лучший способ поставить рамку вокруг TextView.

Используйте изображение с девятью патчами для фона. Это довольно просто, SDK поставляется с инструментом для создания образа с 9 патчами и не требует абсолютно никакого кодирования.

Вы можете добавить в свой код что-то вроде этого:

Папка drawable в разделе res в проекте Android не ограничивается растровыми изображениями (файлами PNG или JPG), но также может содержать формы, определенные в файлах XML.

Эти формы затем можно повторно использовать в проекте. Фигура может использоваться для создания границы вокруг макета. В этом примере показана прямоугольная рамка с изогнутыми углами. В папке с возможностью рисования создается новый файл с именем customborder.xml (в Eclipse используйте меню «Файл» и выберите «Создать», затем «Файл» с выбранным типом папки для рисования в имени файла и нажмите «Готово»).

Вводится XML, определяющий форму границы:

Атрибут android:shape установлен на прямоугольник (файлы форм также поддерживают овал, линию и кольцо). Прямоугольник — это значение по умолчанию, поэтому этот атрибут можно не указывать, если это определяемый прямоугольник. См. Документацию Android по фигурам на странице http://developer.android. .com / guide / themes / resources / drawable-resource.html # Shape для получения подробной информации о файле формы.

Углы элемента задают скругление углов прямоугольника. Можно установить разные радиусы для каждого угла (см. Справку по Android).

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

Цвет границы здесь установлен на светло-серый (шестнадцатеричное значение RGB в формате 1970).

Фигуры также поддерживают градиенты, но здесь они не используются. Опять же, просмотрите ресурсы Android, чтобы узнать, как определяется градиент. Форма применяется к макету с помощью android:background=»@drawable/customborder» .

Внутри макета могут быть добавлены другие виды в обычном порядке. В этом примере был добавлен один TextView с белым текстом (FFFFFF шестнадцатеричный RGB). Для фона задан синий цвет, плюс некоторая прозрачность для уменьшения яркости (шестнадцатеричное значение альфа RGB A00000FF). Наконец, макет смещается от края экрана, помещая его в другой макет с небольшим отступом. Таким образом, полный файл макета выглядит так:

У меня есть способ сделать это очень просто, и я хотел бы им поделиться.

Читайте также:  Звук клавиш для андроид

Когда я хочу возвести mi TextView в квадрат, я просто помещаю их в LinearLayout. Я устанавливаю цвет фона своего LinearLayout и добавляю поле в свой TextView. Результат такой же, как если бы вы скомпилировали TextView.

Вы можете создать собственный фон для текстового представления. Шаги

  1. Зайдите в свой проект.
  2. Перейдите к ресурсам и щелкните правой кнопкой мыши, чтобы выделить.
  3. Нажмите New -> Drawable Resource File.
  4. Дайте имя вашему файлу
  5. Вставьте следующий код в файл

    Для вашего текстового представления, где вы хотите использовать его в качестве фона,

    android: background = «@ drawable / your_fileName»

    С помощью библиотеки компонентов материалов вы можете использовать MaterialShapeDrawable .

    Затем вы можете программно применить MaterialShapeDrawable :

    Изменение ответа Константина Бурова, потому что в моем случае не работает:

    CompileSdkVersion 26 (Android 8.0), minSdkVersion 21 (Android 5.0), targetSdkVersion 26, реализация com.android.support:appcompat-v7:26.1.0, gradle: 4.1

    Вот мой «простой» вспомогательный класс, который возвращает ImageView с рамкой. Просто поместите это в свою папку utils и назовите так:

    Источник

    Как поместить границу вокруг Android textview?

    можно ли нарисовать границу вокруг textview?

    16 ответов

    вы можете установить фигуру drawable (прямоугольник) в качестве фона для представления.

    и прямоугольник drawable назад.xml (положить в папку res/drawable):

    можно использовать @android:color/transparent для сплошного цвета, чтобы иметь прозрачный фон. Вы также можете использовать отступы, чтобы отделить текст от границы. для получения дополнительной информации см.: http://developer.android.com/guide/topics/resources/drawable-resource.html

    позвольте мне суммировать несколько различных (не программных) методов.

    использование фигуры drawable

    сохраните следующее как XML-файл в папке drawable (например, my_border.XML-код):

    затем просто установите его в качестве фона для вашего TextView:

    использование 9-патч

    9-патч-это растягивающееся фоновое изображение. Если вы создадите изображение с границей, оно даст вашему TextView границу. Все, что вам нужно сделать, это сделать изображение, а затем установить его в фоновом режиме в TextView.

    вот некоторые ссылки, которые покажут, как сделать 9-патч изображение:

    что, если я просто хочу верхнюю границу?

    использование layer-list

    вы можете использовать список слоев для укладки двух прямоугольников друг на друга. Сделав второй прямоугольник немного меньше первого, вы можете создать эффект границы. Этот первый (нижний) прямоугольник-это цвет границы, а второй прямоугольник-цвет фона.

    задание android:top=»2dp» смещает верхнюю часть (делает ее меньше) на 2dp. Это позволяет показать первый (нижний) прямоугольник, давая эффект границы. Вы можете применить это к фону TextView так же, как shape drawable было сделано выше.

    вот еще несколько ссылок о списках слоя:

    использование 9-патч

    вы можете просто сделать 9-патч изображение с одной границей. Все остальное — то же самое, что обсуждалось выше.

    режим

    это своего рода трюк, но он работает ну, если вам нужно добавить разделитель между двумя представлениями или границу в один TextView.

    вот еще несколько ссылок:

    простой способ-добавить представление для вашего TextView. Пример для нижней границы:

    для других границ направления, пожалуйста отрегулируйте положение вида разделителя.

    Я решил эту проблему, расширив textview и нарисовав границу вручную. Я даже добавил, чтобы вы могли выбрать, пунктирная или пунктирная граница.

    и класс границы:

    надеюсь, это поможет кому-то:)

    Я просто смотрел на аналогичный ответ — Это можно сделать с помощью Штриха и следующего переопределения:

    вы можете установить границу двумя методами. Один drawable и второй программ.

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

    Я нашел лучший способ поместить границу вокруг TextView.

    используйте изображение с девятью патчами для фона. Это довольно просто, SDK поставляется с инструментом для создания 9-патч-образа, и он включает в себя абсолютно нет кодировка.

    папка drawable в res в проекте Android не ограничивается растровыми изображениями (PNG или JPG-файлами), но также может содержать фигуры, определенные в XML-файлах.

    эти формы затем могут быть повторно использованы в проекте. Фигуру можно использовать для размещения границы вокруг макета. В этом примере показана прямоугольная граница с изогнутыми углами. Новый файл под названием customborder.XML создается в папке мешочки (в Eclipse меню Файл и выберите новый файл, с папку выигрышного выбран введите имя файла и нажмите кнопку Готово).

    вводится XML, определяющий форму границы:

    атрибут android:shape имеет значение прямоугольник (файлы формы также поддерживают овал, линию и кольцо). Rectangle-это значение по умолчанию, поэтому этот атрибут можно опустить, если он задан как прямоугольник. См. документацию по Android на фигурах в http://developer.android.com/guide/topics/resources/drawable-resource.html#Shape для получения подробной информации о файле формы.

    углы элемента задает углы прямоугольника, которые должны быть закруглены. Можно задать разный радиус на каждом углу (см. ссылку на Android).

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

    в цвет границы здесь установлен на светло-серый (CCCCCC шестнадцатеричное значение RGB).

    формирует и поддерживает градиенты, но это не используется здесь. Опять же, см. ресурсы Android, чтобы увидеть, как определяется градиент. Форма применяется к laypout с помощью android:background=»@drawable/customborder» .

    в макете другие виды могут быть добавлены как обычно. В этом примере было добавлено одно TextView, и текст белый (ffffff шестнадцатеричный RGB). Фон установлен на синий, плюс некоторая прозрачность для уменьшения яркости (a00000ff шестнадцатеричное значение альфа RGB). Наконец, макет смещается от края экрана, помещая его в другой макет с небольшим количеством отступов. Полный файл макета таким образом:

    Источник

    Как разместить рамку вокруг текстового вида Android?

    Можно ли рисовать границу вокруг текстового поля?

    Вы можете установить фигуру (прямоугольник) в качестве фона для представления.

    И прямоугольник drawable back.xml (помещается в папку res / drawable):

    Вы можете использовать @android:color/transparent для сплошного цвета, чтобы иметь прозрачный фон. Вы также можете использовать отступы для разделения текста с границы. Для получения дополнительной информации см .: http://developer.android.com/guide/topics/resources/drawable-resource.html

    Позвольте мне подвести несколько различных (непрограммных) методов.

    Использование формы

    Сохраните следующее в виде XML-файла в вашей папке (например, my_border.xml):

    Затем просто установите его в качестве фона для вашего TextView:

    • Форма Рисованная (Android-документы)
    • Советы и рекомендации для разработчиков Android: XML-чертежи (часть I)

    Использование 9-патча

    9-патч – растягиваемое фоновое изображение. Если вы создадите изображение с рамкой, это даст вашему TextView границу. Все, что вам нужно сделать, это сделать изображение, а затем установить его в фоновом режиме в TextView.

    Вот некоторые ссылки, которые покажут, как сделать 9-патч-образ:

    • Рисовать 9-патч
    • Простой генератор Nine-patch
    • Простое руководство по 9-патчу для Android-интерфейса
    • Создание и использование 9-патч-изображений в Android

    Что, если я просто хочу верхнюю границу?

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

    Вы можете использовать список слоев, чтобы складывать два прямоугольника друг над другом. Сделав второй прямоугольник чуть меньшим, чем первый прямоугольник, вы можете сделать эффект границы. Первый (нижний) прямоугольник – это цвет границы, а второй прямоугольник – цвет фона.

    Установка android:top=»2dp» смещает верх (уменьшает) на 2dp. Это позволяет отобразить первый (нижний) прямоугольник, создавая эффект границы. Вы можете применить это к фону TextView так же, как и вытащить shape .

    Вот еще несколько ссылок о списках слоев:

    • Понимание списка для Android
    • Как сделать нижнюю границу в выделенной форме XML-селектором?
    • Создать границы на андроидном представлении в drawable xml, с трех сторон?

    Использование 9-патча

    Вы можете просто сделать изображение с 9 патчами с одной границей. Все остальное такое же, как описано выше.

    Использование представления

    Это своего рода трюк, но он хорошо работает, если вам нужно добавить разделителя между двумя видами или границей в один текстовый файл.

    Вот еще несколько ссылок:

    • Как нарисовать линию в Android
    • Как поместить горизонтальную линию делителя между редактированием текста в действии
    • Как добавить горизонтальную линию 1px над изображением в относительной компоновке?

    Простым способом является добавление представления для вашего TextView. Пример для нижней граничной линии:

    Для других границ направления, пожалуйста, отрегулируйте расположение разделителя.

    Я решил эту проблему, расширив текст и нарисов границу вручную. Я даже добавил, что вы можете выбрать, будет ли точка пунктирной или пунктирной.

    И пограничный класс:

    Надеюсь, это поможет кому-то 🙂

    Я просто смотрел на подобный ответ – он может быть выполнен с помощью Stroke и следующего переопределения:

    Я нашел лучший способ разместить границу вокруг TextView.

    Используйте изображение с девятью патчами для фона. Это довольно просто, SDK поставляется с инструментом для создания 9-патча изображения, и он не содержит абсолютно никакой кодировки.

    Выделенная папка под разрешением в проекте Android не ограничивается растровыми изображениями (PNG или JPG-файлами), но также может содержать формы, определенные в файлах XML.

    Эти формы затем могут быть повторно использованы в проекте. Форма может использоваться для размещения границы вокруг макета. В этом примере показана прямоугольная рамка с изогнутыми углами. В выпадающей папке создается новый файл customborder.xml (в Eclipse используйте меню «Файл» и выберите «Создать», затем «Файл», с выбранным типом выбранной папки в имени файла и нажмите «Готово»).

    Вводится XML, определяющий форму границы:

    Атрибут android:shape имеет прямоугольник (файлы формы также поддерживают овал, линию и кольцо). Rectangle – значение по умолчанию, поэтому этот атрибут может быть опущен, если он определен как прямоугольник. Подробную информацию о файле формы см. В документации по форматам Android по адресу http://developer.android.com/guide/topics/resources/drawable-resource.html#Shape .

    Углы углов задают углы прямоугольника округлыми. На каждом углу можно установить другой радиус (см. Ссылку на Android).

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

    Цвет границы здесь установлен на светло-серый (CXCCC шестнадцатеричное значение RGB).

    Формы также поддерживают градиенты, но здесь они не используются. Опять же, смотрите ресурсы Android, чтобы узнать, как определяется градиент. Форма применяется к манере с использованием android:background=»@drawable/customborder» .

    В пределах макета могут быть добавлены другие представления как обычно. В этом примере добавлен один TextView, а текст белый (FFFFFF шестнадцатеричный RGB). Фон установлен на синий, а также на прозрачность, чтобы уменьшить яркость (значение A00000FF hexadecimal alpha RGB). Наконец, макет смещается от края экрана, помещая его в другой макет с небольшим количеством отступов. Полный файл макета:

    Вы можете добавить что-то вроде этого в свой код:

    Вы можете установить границу двумя способами. Один из них – с возможностью рисования, а второй – программный.

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

    У меня есть способ сделать это очень просто, и я хотел бы поделиться им.

    Когда я хочу квадрат mi TextViews, я просто помещаю их в LinearLayout. Я установил цвет фона моего LinearLayout, и я добавляю дополнение к моему TextView. Результат в точности соответствует квадрату TextView.

    Вот мой «простой» вспомогательный класс, который возвращает ImageView с границей. Просто отбросьте это в своей папке utils и вызовите ее так:

    Это может вам помочь.

    На самом деле, это очень просто. Если вам нужен простой черный прямоугольник за Textview, просто добавьте в теги TextView android:background=»@android:color/black» . Как это:

    Источник

    Читайте также:  Google cast для андроид
Оцените статью