2016-09-16 86 views
0

我有佈局:一個RelativeLayout的另一個之上

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:background="@color/text_color" 
       android:minHeight="285dp" 
       android:orientation="vertical"> 


    <RelativeLayout 
     android:id="@+id/credit" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginBottom="-30dp"> 

     <ImageView 
      android:id="@+id/imageView1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentLeft="true" 
      android:layout_alignParentTop="true" 
      android:src="@drawable/bonus_badge"/> 

     <TextView 
      android:id="@+id/textView1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentTop="true" 
      android:layout_centerHorizontal="true" 
      android:layout_marginTop="6dp" 
      android:text="Get" 
      android:textColor="@color/black" 
      android:textSize="12sp"/> 
     <!-- don't change this layout view order --> 
     <TextView 
      android:id="@+id/amount" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentTop="true" 
      android:layout_centerHorizontal="true" 
      android:layout_marginTop="18dp" 
      android:text="$1xxx" 
      android:textColor="@color/black" 
      android:textSize="14sp" 
      android:textStyle="bold"/> 

    </RelativeLayout> 

    <RelativeLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="10dp" 
     android:layout_marginRight="10dp"> 

     <ImageView 
      android:id="@+id/image" 
      android:layout_width="162dp" 
      android:layout_height="112dp" 
      android:adjustViewBounds="true" 
      android:src="@drawable/test_image"/> 


     <ImageView 
      android:id="@+id/topFlag" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:adjustViewBounds="true" 
      android:background="@drawable/sold_out" 
      android:visibility="gone"/> 

     <ImageView 
      android:id="@+id/waitListFlag" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:adjustViewBounds="true" 
      android:src="@drawable/join_wait_list" 
      android:visibility="gone"/> 
    </RelativeLayout> 

    <TextView 
     android:id="@+id/options" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="8dp" 
     android:layout_marginStart="8dp" 
     android:text="Options" 
     android:textColor="@color/unactive_color" 
     android:textSize="14sp"/> 


    <TextView 
     android:id="@+id/name" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="8dp" 
     android:layout_marginStart="8dp" 
     android:ellipsize="end" 
     android:maxHeight="80dp" 
     android:maxLines="3" 
     android:minHeight="40dp" 
     android:minLines="3" 
     android:text="name" 
     android:textColor="@color/dark_cyan" 
     android:textSize="16sp"/> 

    <TextView 
     android:id="@+id/oldPrice" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="8dp" 
     android:layout_marginStart="8dp" 
     android:text="old price" 
     android:textColor="@color/unactive_color" 
     android:textSize="14sp"/> 

    <TextView 
     android:id="@+id/newPrice" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="8dp" 
     android:layout_marginStart="8dp" 
     android:text="new price" 
     android:textColor="@color/price_black" 
     android:textSize="22sp"/> 

    <TextView 
     android:id="@+id/Save" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="8dp" 
     android:layout_marginStart="8dp" 
     android:text="save" 
     android:textColor="@color/unactive_color" 
     android:textSize="14sp"/> 

    <View 
     android:id="@+id/view1" 
     android:layout_width="match_parent" 
     android:layout_height="1px" 
     android:layout_marginTop="10dp" 
     android:background="@color/divider_color_product"/> 


</LinearLayout> 

而實際結果是:

enter image description here

但我需要類似的東西:

enter image description here

問題與黃色徽章android:id="@+id/credit"

我需要把它放在空間之前的圖像之上。

我試圖以編程方式設置bringToFront();但沒有任何反應。

另外我試圖玩layout_belowlayout_above屬性。

問題在哪裏?無論如何,謝謝!

+0

第二個relativeLayout是圖片嗎? –

回答

1

看來,第二個RelativeLayout是大圖像,第一個是標籤。所以我修改XML下面,希望這是你想要什麼:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:background="@color/text_color" 
    android:minHeight="285dp" 
    android:orientation="vertical"> 

    <FrameLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content"> 

     <RelativeLayout 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_margin="10dp"> 

      <ImageView 
       android:id="@+id/image" 
       android:layout_width="162dp" 
       android:layout_height="112dp" 
       android:adjustViewBounds="true" 
       android:src="@drawable/test_image" /> 


      <ImageView 
       android:id="@+id/topFlag" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:adjustViewBounds="true" 
       android:background="@drawable/sold_out" 
       android:visibility="gone" /> 

      <ImageView 
       android:id="@+id/waitListFlag" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:adjustViewBounds="true" 
       android:src="@drawable/join_wait_list" 
       android:visibility="gone" /> 
     </RelativeLayout> 

     <RelativeLayout 
      android:id="@+id/credit" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content"> 

      <ImageView 
       android:id="@+id/imageView1" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_alignParentLeft="true" 
       android:layout_alignParentTop="true" 
       android:src="@drawable/bonus_badge" /> 

      <TextView 
       android:id="@+id/textView1" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_alignParentTop="true" 
       android:layout_centerHorizontal="true" 
       android:layout_marginTop="6dp" 
       android:text="Get" 
       android:textColor="@color/black" 
       android:textSize="12sp" /> 
      <!-- don't change this layout view order --> 
      <TextView 
       android:id="@+id/amount" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_alignParentTop="true" 
       android:layout_centerHorizontal="true" 
       android:layout_marginTop="18dp" 
       android:text="$1xxx" 
       android:textColor="@color/black" 
       android:textSize="14sp" 
       android:textStyle="bold" /> 

     </RelativeLayout> 


    </FrameLayout> 

    <TextView 
     android:id="@+id/options" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="8dp" 
     android:layout_marginStart="8dp" 
     android:text="Options" 
     android:textColor="@color/unactive_color" 
     android:textSize="14sp" /> 


    <TextView 
     android:id="@+id/name" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="8dp" 
     android:layout_marginStart="8dp" 
     android:ellipsize="end" 
     android:maxHeight="80dp" 
     android:maxLines="3" 
     android:minHeight="40dp" 
     android:minLines="3" 
     android:text="name" 
     android:textColor="@color/dark_cyan" 
     android:textSize="16sp" /> 

    <TextView 
     android:id="@+id/oldPrice" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="8dp" 
     android:layout_marginStart="8dp" 
     android:text="old price" 
     android:textColor="@color/unactive_color" 
     android:textSize="14sp" /> 

    <TextView 
     android:id="@+id/newPrice" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="8dp" 
     android:layout_marginStart="8dp" 
     android:text="new price" 
     android:textColor="@color/price_black" 
     android:textSize="22sp" /> 

    <TextView 
     android:id="@+id/Save" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="8dp" 
     android:layout_marginStart="8dp" 
     android:text="save" 
     android:textColor="@color/unactive_color" 
     android:textSize="14sp" /> 

    <View 
     android:id="@+id/view1" 
     android:layout_width="match_parent" 
     android:layout_height="1px" 
     android:layout_marginTop="10dp" 
     android:background="@color/divider_color_product" /> 


</LinearLayout> 
0

創建你父RelativeLayout的,那麼,你想裏面的東西,得到疊加的效果,你應該知道,打擊佈局出現在上面的透氣佈局

--relativelayout | --------- ImageView | --------- Relativelayout(讓它alignParentTop) | ------ ImageView | ------ TextView(居中父)

相關問題