2016-06-12 46 views
0

我想給阿爾法只包含textview的相對佈局,但它給阿爾法它的孩子現在textview也有阿爾法也沒有給我任何東西我想刪除alpha,並且只留下相對佈局阿爾法佈局讓所有的孩子都有阿爾法?Android

 <?xml version="1.0" encoding="utf-8"?> 
      <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       android:id="@+id/phaseLayout" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:orientation="vertical" > 

       <ImageView 
        android:id="@+id/phaseImage" 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:layout_alignParentTop="true" 
        android:layout_centerHorizontal="true" 
        android:scaleType="fitXY" 
        android:src="@drawable/pic1" /> 

       <FrameLayout 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_alignBottom="@+id/phaseImage" 
        android:layout_alignParentRight="true" 
        android:alpha=".6" 
         android:background="@drawable/text_view_border" 
        android:layout_marginBottom="10dp" > 

        <RelativeLayout 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 

         android:gravity="center_vertical" 
         android:padding="5dp" > 

         <TextView 
          android:id="@+id/phaseName" 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" 
          android:layout_centerVertical="true" 
          android:padding="5dp" 
          android:text="" 
          android:textAppearance="?android:attr/textAppearanceMedium" 
          android:textColor="@color/white" /> 
        </RelativeLayout> 
       </FrameLayout> 

      </RelativeLayout> 
+0

那麼,孩子從他們的父母繼承。你期望什麼?現在循環所有的孩子,並單獨設置他們的alpha。 – 2016-06-12 11:26:40

+0

我做了男人,但沒有工作,我需要讓textview有alpha。6的黑色背景我試了這麼多,沒有工作:( –

+0

但爲什麼你需要設置父母的alpha? – 2016-06-12 11:37:05

回答

1

使用RelativeLayout的背景並設置drawable的透明顏色。 繪製例如:

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="rectangle"> 
    <solid android:color="#00FFFFFF" /> 
</shape> 
+0

你的解決方案也很好,謝謝你:) –

1

使用阿爾法屬性到你的佈局將導致申請阿爾法所有子佈局和視圖。更好的方法是將Alpha應用於給定佈局的背景。這將導致僅將Alpha應用於該佈局。

下面是映射:

Hex Opacity Values 

100% — FF 
95% — F2 
90% — E6 
85% — D9 
80% — CC 
75% — BF 
70% — B3 
65% — A6 
60% — 99 
55% — 8C 
50% — 80 
45% — 73 
40% — 66 
35% — 59 
30% — 4D 
25% — 40 
20% — 33 
15% — 26 
10% — 1A 
5% — 0D 
0% — 00 

所以,如果你的顏色代碼爲#FFFFFF那麼你的顏色代碼將#99FFFFFF指白色與60%的透明度。

希望它會幫助你:)

+0

非常題外話。 OP沒有詢問如何設置alpha。但爲什麼alpha從父母繼承到兒童。 – 2016-06-12 11:41:25

+0

真的非常感謝這麼多驚人的解決方案<3 –