Intereting Posts
В ионном каркасе, как установить по умолчанию первую кнопку ионного сегмента в активном состоянии? Обновление зависимостей Gradle Как создать базу данных sqlite во время установки приложения для Android? Есть ли сочетание клавиш в Eclipse для «открытого объявления в макете»? Различные макеты для горизонтального и вертикального для Android-приложения? Android Studio Для каждого макроса В чем разница между списком и таблицей? Внедрить расширяемый ListView с помощью пользовательского адаптера Как проверить мой доступ в Интернет на моем приложении Android Ошибка: выполнение выполнено для задачи ': app: clean'. Не удалось удалить файл Android отображает различное изображение на разных разрешениях Функциональные тесты: звонки в MediaPlayer Как сделать изменения пользовательского интерфейса активности из Android AsyncTask? Как нарисовать вертикальную линию между двумя кнопками в android Кордова – Код ошибки 1 для команды | Не удалось выполнить команду

Создать кнопку с закругленными углами в android

Введите описание изображения здесь

Я пытаюсь создать кнопку, которая выглядит как на изображении выше. Первоначально моя идея состояла в том, чтобы создать патч 9 и установить его как фон кнопки. Но поскольку это простая кнопка, я думаю, что мы можем каким-то образом сделать это без использования каких-либо изображений.

Цвет фона кнопки – # 0c0c0c Цвет рамки – # 1a1a1a Цвет текста – #cccccc

Я нашел аналогичный вопрос о SO, но это создает градиент –
Android – граница для кнопки

В руководстве для разработчиков Android есть подробное руководство по этому вопросу: Shipe Drawbables .

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

 <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <corners android:radius="3dp" /> <stroke android:width="5px" android:color="#1a1a1a" /> </shape> 
  <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@+id/textView1" android:layout_alignLeft="@+id/textView1" android:layout_marginBottom="56dp" android:text="Button" android:textColor="#FF0F13" android:background="@drawable/bbkg"/>//create bbkg.xml in drawable folder 

Bbkg.xml // кнопка фона

  <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pressed="true" android:drawable="@drawable/pressed" /> <item android:state_focused="false" android:drawable="@drawable/normal" /> </selector> 

Normal.xml // кнопка фон нормальное состояние

  <?xml version="1.0" encoding="UTF-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <solid android:color="#10EB0A"/> <stroke android:width="3dp" android:color="#0FECFF" /> <padding android:left="5dp" android:top="5dp" android:right="5dp" android:bottom="5dp"/> <corners android:bottomRightRadius="7dp" android:bottomLeftRadius="7dp" android:topLeftRadius="7dp" android:topRightRadius="7dp"/> </shape> 

Нажато.xml // кнопка фонового нажатого состояния

 <?xml version="1.0" encoding="UTF-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <solid android:color="#FF1A47"/> <stroke android:width="3dp" android:color="#0FECFF"/> <corners android:bottomRightRadius="7dp" android:bottomLeftRadius="7dp" android:topLeftRadius="7dp" android:topRightRadius="7dp"/> </shape> 

Если вы хотите что-то вроде этого

Предварительный просмотр кнопки

Вот код.

1. Создайте xml-файл в своей папке, подобной mybutton.xml, и вставьте следующую разметку:

 <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android" > <item android:state_pressed="true" > <shape android:shape="rectangle" > <corners android:radius="3dip" /> <stroke android:width="1dip" android:color="#5e7974" /> <gradient android:angle="-90" android:startColor="#345953" android:endColor="#689a92" /> </shape> </item> <item android:state_focused="true"> <shape android:shape="rectangle" > <corners android:radius="3dip" /> <stroke android:width="1dip" android:color="#5e7974" /> <solid android:color="#58857e"/> </shape> </item> <item > <shape android:shape="rectangle" > <corners android:radius="3dip" /> <stroke android:width="1dip" android:color="#5e7974" /> <gradient android:angle="-90" android:startColor="#8dbab3" android:endColor="#58857e" /> </shape> </item> </selector> 

2. Теперь используйте эту возможность для фона вашего представления. Если вид кнопки, то что-то вроде этого:

 <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="10dp" android:textColor="#ffffff" android:background="@drawable/mybutton" android:text="Buttons" />