Warum untergeordneten Ansichten Erben der alpha-Wert aus der übergeordneten layout
In meiner app habe ich ein Hintergrundbild einstellen, der die top-level-linearlayout und dann blenden Sie die hintergrund-ich alpha bis .2, aber dies erzeugt ein seltsames problem, es setzt auch die alpha für alle Kinder von der Aufmachung gut, auch wenn ich explizit definieren, eine andere alpha-Wert in den Kindern.
Ist es möglich, die alpha-Wert von einem Elternteil und nicht auf das des Kindes?
Was gibt es eine richtige Weg, um die alpha auf top-level-Sicht, ohne die alpha auf, dass die Ansichten der Kinder?
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/ll1"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:background="@drawable/bg"
android:alpha="0.2">
<Button android:id="@+id/btn1"
android:text="Set 1"
android:layout_width="300px"
android:layout_height="150px"
android:layout_gravity="center"
android:background="@drawable/button1"
android:tag="1"
android:alpha="1"/>
<Button android:id="@+id/btn2"
android:text="Set 2"
android:layout_width="300px"
android:layout_height="150px"
android:layout_gravity="center"
android:background="@drawable/button2"
android:tag="2"/>
</LinearLayout>
Du musst angemeldet sein, um einen Kommentar abzugeben.
Genau das ist, wie es arbeiten soll.
Warum nicht ändern Sie einfach die alpha-Version von Ihrem hintergrund drawable "@drawable/bg" auf 0,2?
Alternativ versuchen ein FrameLayout mit dieser Grundstruktur:
Einen Weg, den alpha-Wert in der hash-code für die Farbe, also statt #RRGGBB verwenden: #AARRGGBB. Dies stellt sicher, dass der alpha-Wert nicht vererbt.
Benötigen Sie ein framelayout. andere weisen, die Sie Ihre Schaltfläche ist enlosed durch ein linearlayout mit aplha-set, das wird auch Auswirkungen auf die Schaltflächen.