Chcę, aby przycisk dokładnie tak jak w tym obraziejak zrobić przycisk w kształcie kapsułki w Androidzie?
chcę użyć pliku xml, który będzie używany do produkcji takiego przycisku. Czy ktoś może mi powiedzieć, jak to zrobić?
Chcę, aby przycisk dokładnie tak jak w tym obraziejak zrobić przycisk w kształcie kapsułki w Androidzie?
chcę użyć pliku xml, który będzie używany do produkcji takiego przycisku. Czy ktoś może mi powiedzieć, jak to zrobić?
końcu znalazłem sposób to zrobić z pliku XML. tutaj jest kod pliku xml, który dał mi przycisk kształtu kapsuły.
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<corners
android:bottomLeftRadius="30dp"
android:bottomRightRadius="30dp"
android:radius="60dp"
android:topLeftRadius="30dp"
android:topRightRadius="30dp" />
<solid android:color="#CFCFCF" />
<padding
android:bottom="0dp"
android:left="0dp"
android:right="0dp"
android:top="0dp" />
<size
android:height="60dp"
android:width="270dp" />
</shape>
Atrybut 'promień' będzie zignorować, ponieważ ustawiasz również indywidualny promień (np. 'bottomLeftRadius'). Aby zacytować [docs] (http://developer.android.com/guide/topics/resources/drawable-resource.html), "Promień dla wszystkich narożników, jako wartość wymiaru lub zasób wymiaru. To jest przesłonięte dla każdego róg według następujących atrybutów. " – tir38
Usunąłem atrybut wielkości statycznej i zwiększyłem wspólny promień do 50 dp (po usunięciu wszystkich górnych, dolnych, lewego i prawego promienia) –
rozważyć dostosowywania shape
do niego i używać corners
wewnątrz tego kształtu:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<corners android:radius="10dp"/> <!-- increasing the value, increases the rounding. And as TTransmit said, to make it like a capsule make the radius half of your button height -->
<solid android:color="#AAAAAA"/> <!-- the button color -->
</shape>
więc zapisać, że kształt w folderze /drawable
, powiedzmy, że zostanie on zapisany jako „button_bg.xml”, tak podczas deklarowania przycisk w xml układ:
<Button
android:background="@drawable/button_bg"
android:layout_height="20dp"
.
. />
Trick uzyskać kształt kapsuły, należy dodatkowo określić wysokość elementu przycisku jako dwukrotność promienia naroża, tj. 20 dp w tym przypadku. Dobrym pomysłem byłoby stworzenie stylu wykorzystującego wysokość i tło do rysowania. – TTransmit
@TTransmit dobry napiwek –
Próbowałem powyższych sposobów wspomnieć za pomocą zarówno prostokąta jak i owalnego kształtu, ale nic nie wydaje się dać kształt kapsułka, którą chcę. – user3393926
Oto kod przycisku w XML do tworzenia, ale jeśli chcesz przycisk, aby utworzyć jak kapsuła w kształcie trzeba dodać tło
<Button
android:id="@+id/image"
android:layout_width="match_parent"
android:layout_height="wrap_content"
**android:background="@drawable/button_background"**
android:text="@string/image" >
</Button>
tworzyć button_background.xml w rozciągliwej folderze, wpisz następujący kod w button_background.xml
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" android:padding="40dp">
<!-- you can use any color you want I used here gray color-->
<solid android:color="#01A9DB"/>
<corners
android:bottomRightRadius="20dp"
android:bottomLeftRadius="20dp"
android:topLeftRadius="20dp"
android:topRightRadius="20dp"/>
</shape>
Można sprawdzić tutaj dla ewentualnej odpowiedzi z yours.http: //stackoverflow.com/questions/7606995/android-how-apply-shape-and-selector-simultaneously-for-button – virendrao