Chcę usunąć cień z przycisku, aby wydawał się bardziej płaski.Jak usunąć cień przycisku (Android)
mam to teraz:
Ale chcę to:
Chcę usunąć cień z przycisku, aby wydawał się bardziej płaski.Jak usunąć cień przycisku (Android)
mam to teraz:
Ale chcę to:
Ano Ther Alternatywą jest dodanie
style="?android:attr/borderlessButtonStyle"
do przycisku xml jako udokumentowane tutaj http://developer.android.com/guide/topics/ui/controls/button.html
Przykładem może być
<Button
android:id="@+id/button_send"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/button_send"
android:onClick="sendMessage"
style="?android:attr/borderlessButtonStyle" />
Spowoduje to usunięcie stylu przycisku, np. cień i płaskorzeźby. Dodawanie selektora z kształtami jest opcjonalne. To jest dokładniejsza odpowiedź. –
To powinna być zaakceptowana odpowiedź. – pblead26
Dodatkowo używam niestandardowego stylu dla mojego przycisku. możesz rozszerzyć swój niestandardowy styl z:
Używanie go jako tło dla swojego przycisk może pomóc, zmienić kolor do Twoich potrzeb
<?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">
<solid android:color="@color/app_theme_light" />
<padding
android:left="8dp"
android:top="4dp"
android:right="8dp"
android:bottom="4dp" />
</shape>
</item>
<item>
<shape android:shape="rectangle">
<solid android:color="@color/app_theme_dark" />
<padding
android:left="8dp"
android:top="4dp"
android:right="8dp"
android:bottom="4dp" />
</shape>
</item>
</selector>
Czy możesz wyjaśnić, jak to działa? Nie usunięto dla mnie cienia – CACuzcatlan
zastępuje oryginalne tło z cieniami, z tym tło z jednolitym kolorem – dlohani
użyć niestandardowego stylu
<style name="MyButtonStyle" parent="@style/Widget.AppCompat.Button.Borderless"></style>
Spróbuj: android:stateListAnimator="@null"
Chociaż może to rozwiązać problem PO, zalecam dodać do niego jakiś kontekst. Dlaczego to pomoże? Ponadto, "spróbuj tego" jest nieco mylące. Jesteś pewien, że to rozwiąże problem lub po prostu zgadniesz? Jeśli tak, powinieneś zamiast tego napisać komentarz. – GergelyPolonkai
Prostszy sposób to zrobić jest dodanie tego tagu do przycisku:
android:stateListAnimator="@null"
choć wymaga to poziom API 21 lub więcej ..
Pracowałem dla mnie bardzo dobrze –
znaku @ Alt-Cat pracę odpowiedź dla mnie!
R.attr.borderlessButtonStyle nie zawiera cienia.
a dokument przycisku jest świetny.
Można również ustawić ten styl na niestandardowym przycisku w drugim konstruktorze.
public CustomButton(Context context, AttributeSet attrs) {
this(context, attrs, R.attr.borderlessButtonStyle);
}
Java
setStateListAnimator(null);
XML
android:stateListAnimator="@null"
pracował dla mnie w xml dzięki @Michael –
Łatwy i czysty. – JCasso
Zamiast przycisku można użyć TextView i dodaj kliknij słuchacza w kodzie Java.
tj.
w xml układu działalność:
<TextView
android:id="@+id/btn_text_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/colorPrimaryDark"
android:text="@string/btn_text"
android:gravity="center"
android:textColor="@color/colorAccent"
android:fontFamily="sans-serif-medium"
android:textAllCaps="true" />
w pliku aktywność Java:
TextView btnTextView = (TextView) findViewById(R.id.btn_text_view);
btnTextView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// handler code
}
});
To nie jest poprawna odpowiedź, ale faktycznie pomogłeś mi rozwiązać problem z podobnym problemem, więc dziękuję! – box
aha! fajny pomysł - szybko mi to naprawię - –
android: theme = "@ android: styl/motywy.NoTitleBar”w swojej działalności również może pomóc
piszę komentarz tutaj, to praca dla mnie. [http://stackoverflow.com/questions/27867284/remove-shadow-effect-on-android-button/30856094 # 30856094] [1] [1]: http://stackoverflow.com/questions/27867284/remove-shadow-effect-on-android-button/30856094#30856094 – msamardzic
http: // stackoverflow. com/questions/27408240/cant-get-rid-of-shadow-under-android-button – smileVann