2016-09-29 54 views
0
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="match_parent" 
      android:orientation="vertical" 
      android:layout_height="match_parent"> 

     <ImageView 
      android:layout_width="433dp" 
      android:layout_height="210dp" 
      android:layout_marginTop="25dp" 
      android:id="@+id/imageView" 
      android:scaleType="fitXY" 
      android:contentDescription="@string/image_description" /> 

     <TextView 
      android:id="@+id/item_number" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:fontFamily="sans-serif-light" 
      android:text="@string/list_number_placeholder" 
      android:textColor="@color/bar_separator_color" 
      android:layout_centerInParent="true" 
      android:textSize="50dp" 
      android:gravity="center" 
      android:layout_marginLeft="85dp" 
      /> 

我有一個問題,我不能讓我的imageview上的文字,我認爲它的東西與圖層。請幫我..Android studio XML textview上一幅圖像

IM BTW在Android Studio中XD初學者

+1

使用RelativeLayout而不是LinearLayout。它會疊加元素,你可以按你的意願訂購 –

回答

0

您使用的LinearLayout它通過一個棧你的觀點之一,無論是在水平方向或垂直方向(方向)。

所以使用RelativeLayout而不是如果你想視圖重疊。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="match_parent" 
      android:orientation="vertical" 
      android:layout_height="match_parent"> 

     <ImageView 
      android:layout_width="433dp" 
      android:layout_height="210dp" 
      android:layout_marginTop="25dp" 
      android:id="@+id/imageView" 
      android:scaleType="fitXY" 
      android:contentDescription="@string/image_description" /> 

     <TextView 
      android:id="@+id/item_number" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:fontFamily="sans-serif-light" 
      android:text="@string/list_number_placeholder" 
      android:textColor="@color/bar_separator_color" 
      android:layout_centerInParent="true" 
      android:textSize="50dp" 
      android:gravity="center" 
      android:layout_marginLeft="85dp" 
      /> 

</RelativeLayout> 
0

更改您的線性佈局,以相對佈局

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="match_parent" 
     android:orientation="vertical" 
     android:layout_height="match_parent"> 

    <ImageView 
     android:layout_width="433dp" 
     android:layout_height="210dp" 
     android:layout_marginTop="25dp" 
     android:id="@+id/imageView" 
     android:scaleType="fitXY" 
     android:contentDescription="@string/image_description" /> 

    <TextView 
     android:id="@+id/item_number" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:fontFamily="sans-serif-light" 
     android:text="@string/list_number_placeholder" 
     android:textColor="@color/bar_separator_color" 
     android:layout_centerInParent="true" 
     android:textSize="50dp" 
     android:gravity="center" 
     android:layout_marginLeft="85dp" 
     /> 
     </RelativeLayout> 

**那麼你最好使用的FrameLayout **。我希望這會幫助你

+0

謝謝!你幫了我很多! – Jowie

+0

如果它幫助您,請將其標記爲答案 –

0

它不是好方法。用java更好地打印一些東西:

LinearLayout lView = new LinearLayout(this); 

myText = new TextView(this); 
myText.setText("My Text"); 

lView.addView(myText); 

setContentView(lView); 
0

This works。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="match_parent" 
     android:orientation="vertical" 
     android:layout_height="match_parent"> 

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

     <ImageView 
      android:layout_width="433dp" 
      android:layout_height="210dp" 
      android:layout_marginTop="25dp" 
      android:id="@+id/imageView" 
      android:scaleType="fitXY" 
      android:contentDescription="hii" /> 

     <TextView 
      android:id="@+id/item_number" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:fontFamily="sans-serif-light" 
      android:text="yo" 
      android:textColor="@color/bg_login" 
      android:layout_centerInParent="true" 
      android:textSize="50dp" 
      android:gravity="center" 
      android:layout_marginLeft="85dp" 
      /> 
     </RelativeLayout> 
     </LinearLayout> 
0

試試這個

<?xml version="1.0" encoding="utf-8"?> 

    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"> 

     <ImageView 
      android:id="@+id/picture" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:src="@drawable/picture" 
      android:scaleType="centerCrop" /> 

     <TextView 
      android:id="@+id/text" 
      android:gravity="center_horizontal" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:text="My super text" 
      android:textColor="@android:color/white" 
      android:layout_gravity="center_vertical" 
      android:textStyle="bold" 
      android:textSize="48sp" /> 
     <LinearLayout 
      android:id="@+id/controls" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:background="#7f000000" 
      android:orientation="vertical" 
      android:layout_gravity="bottom"/> 
    </FrameLayout> 
0

這個代碼把文字圖像的中間爲你所要求。

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" android:layout_width="match_parent" 
android:id="@+id/nations" 
android:background="@color/colorPrimary" 
android:layout_height="match_parent"> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:background="@color/colorPrimary" 
android:layout_height="wrap_content"> 
<ImageView 
     android:src="@mipmap/ic_launcher" 
     android:layout_width="433dp" 
     android:layout_height="210dp" 
     android:layout_marginTop="25dp" 
     android:id="@+id/imageView" 
     android:scaleType="fitXY" 
     android:contentDescription="image" /> 

    <TextView 
     android:id="@+id/item_number" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:fontFamily="sans-serif-light" 
     android:text="@string/list_number_placeholder" 
     android:textColor="@color/bar_separator_color" 
     android:textSize="50dp" 
     android:layout_centerVertical="true" 
     android:layout_centerHorizontal="true" 
     /></RelativeLayout> 
</LinearLayout>