Próbuję zrobić okrągły guzik, ale nie wiem, jak mam to zrobić. Mogę zrobić guzik z zaokrąglonymi rogami, ale jak mogę zaokrąglić koło. To nie to samo. Powiedz mi, czy to możliwe na Androidzie? Dziękuję Ci.
Próbuję zrobić okrągły guzik, ale nie wiem, jak mam to zrobić. Mogę zrobić guzik z zaokrąglonymi rogami, ale jak mogę zaokrąglić koło. To nie to samo. Powiedz mi, czy to możliwe na Androidzie? Dziękuję Ci.
Odpowiedzi:
Utwórz plik xml o nazwie roundedbutton.xmlw folderze do rysowania
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#eeffffff" />
<corners android:bottomRightRadius="8dp"
android:bottomLeftRadius="8dp"
android:topRightRadius="8dp"
android:topLeftRadius="8dp"/>
</shape>
Na koniec ustaw to jako tło dla swojego Buttonasandroid:background = "@drawable/roundedbutton"
Jeśli chcesz, aby był całkowicie zaokrąglony, zmień promień i zdecyduj się na coś, co jest dla Ciebie w porządku.
Jeśli korzystasz z Android Studio, możesz po prostu użyć:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="ring">
<solid android:color="#FFFFFF"/>
</shape>
to działa dobrze dla mnie, mam nadzieję, że to komuś pomoże.
ringniczego nie pokazuje. Lepiej używać oval.
Utwórz plik do rysowania / button_states.xml zawierający:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="false">
<shape android:shape="rectangle">
<corners android:radius="1000dp" />
<solid android:color="#41ba7a" />
<stroke
android:width="2dip"
android:color="#03ae3c" />
<padding
android:bottom="4dp"
android:left="4dp"
android:right="4dp"
android:top="4dp" />
</shape>
</item>
<item android:state_pressed="true">
<shape android:shape="rectangle">
<corners android:radius="1000dp" />
<solid android:color="#3AA76D" />
<stroke
android:width="2dip"
android:color="#03ae3c" />
<padding
android:bottom="4dp"
android:left="4dp"
android:right="4dp"
android:top="4dp" />
</shape>
</item>
</selector>
Użyj go w tagu przycisku w dowolnym pliku układu
<Button
android:layout_width="220dp"
android:layout_height="220dp"
android:background="@drawable/button_states"
android:text="@string/btn_scan_qr"
android:id="@+id/btn_scan_qr"
android:textSize="15dp"
/>
Android Circlebutton Markushiego:
(Ta biblioteka jest przestarzała i nie ma nowego rozwoju. Zamiast tego rozważ użycie FAB).

<corners android:bottomRightRadius="180dip"
android:bottomLeftRadius="180dip"
android:topRightRadius="180dip"
android:topLeftRadius="180dip"/>
<solid android:color="#6E6E6E"/> <!-- this one is ths color of the Rounded Button -->
i dodaj to do kodu przycisku
android:layout_width="50dp"
android:layout_height="50dp"
Użyto kształtu jako owalnego. To sprawia, że przycisk jest owalny
<item>
<shape android:shape="oval" >
<stroke
android:height="1.0dip"
android:width="1.0dip"
android:color="#ffee82ee" />
<solid android:color="#ffee82ee" />
<corners
android:bottomLeftRadius="12.0dip"
android:bottomRightRadius="12.0dip"
android:radius="12.0dip"
android:topLeftRadius="12.0dip"
android:topRightRadius="12.0dip" />
</shape>
</item>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid
android:color="#ffffff"
/>
</shape>
Ustaw to w swoich zasobach do rysowania XML i prostym użyciu i przycisku obrazu z okrągłym obrazem, używając jako tła do rysowania.
Okrągły przycisk w systemie Android
Możesz zrobić ImageButtonz okrągłym obrazem tła.
użyj ImageButton zamiast Button ....
i zrób okrągły obraz z przezroczystym tłem
Jeśli chcesz mieć okrągły przycisk FAB i korzystasz z oficjalnej biblioteki komponentów materiałowych, możesz to łatwo zrobić w ten sposób:
<com.google.android.material.button.MaterialButton
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
app:cornerRadius="28dp"
android:layout_width="56dp"
android:layout_height="56dp"
android:text="1" />
Wynik:
Jeśli zmienisz rozmiar przycisku, po prostu uważaj, aby użyć połowy rozmiaru przycisku jako app:cornerRadius.
Dla okrągłego przycisku utwórz kształt:
<?xml version="1.0" encoding="utf-8"?>
<stroke
android:width="8dp"
android:color="#FFFFFF" />
<solid android:color="#ffee82ee" />
<corners
android:bottomLeftRadius="45dp"
android:bottomRightRadius="45dp"
android:topLeftRadius="45dp"
android:topRightRadius="45dp" />
użyj go jako tła linku do przycisku
Tak, to możliwe, poszukaj łatki 9 w Google. Dobre artykuły:
http://radleymarx.com/blog/simple-guide-to-9-patch/
http://ogrelab.ikratko.com/custom-color-buttons-for-android/
To jest
android.R.drawable.expander_ic_minimized
spójrz na wbudowane w androida drawables:
Możesz użyć FloatingActionButton Google
XMl:
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@android:drawable/ic_dialog_email" />
Jawa:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
FloatingActionButton bold = (FloatingActionButton) findViewById(R.id.fab);
bold.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// Do Stuff
}
});
}
Gradle:
compile 'com.android.support:design:23.4.0'
i pobierz go, ekstrahuj, wewnątrz tego folderu szukaj mipmap-hdpi.
skopiuj obraz z folderu mipmap-hdpi i wklej go w folderze drwable projektu Android.
Teraz ustaw tło jako ten obraz.