1

我有一個問題,嘗試將textView對齊到佈局中心:當我嘗試這樣做時 - 它與左側的按鈕有衝突 - 如果文本太長 - 它會隱藏在按鈕下方。文本長度可能非常不同,我需要它在佈局的中心,但不在按鈕下。如何對齊佈局中心的textView而不與其他視圖衝突?

下面是活動佈局的xml文件:

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

    <RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:id="@+id/item_content_action_bar_layout" 
     android:layout_alignParentTop="true" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:background="@color/colorBlue" 
     android:padding="10dp"> 

     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:id="@+id/item_content_title" 
      android:textAppearance="?android:attr/textAppearanceMedium" 
      android:text="Title" 
      android:textColor="@color/colorWhite" 
      android:textAlignment="center" 
      android:singleLine="true" 
      android:layout_gravity="center_vertical" 
      android:textStyle="bold" 
      android:autoText="false" 
      android:layout_centerInParent="true" 
      android:layout_alignWithParentIfMissing="false" 
      android:layout_alignParentRight="false" /> 

     <ImageButton 
      android:layout_width="120dp" 
      android:layout_height="45dp" 
      android:id="@+id/item_content_back_button" 
      android:background="@drawable/back_button_selector" 
      android:layout_centerVertical="true" 
      android:layout_alignParentLeft="true" 
      android:layout_alignParentStart="true" 
      android:layout_marginRight="5dp" /> 

    </RelativeLayout> 

    <ScrollView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:id="@+id/item_content_scroll_view" 
     android:layout_centerVertical="true" 
     android:layout_centerHorizontal="true" 
     android:fillViewport="true"> 

     <LinearLayout 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:orientation="vertical"> 

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

       <ImageView 
        android:layout_width="125dp" 
        android:layout_height="125dp" 
        android:id="@+id/item_content_image" 
        android:src="@drawable/ic_no_thumbnail" 
        android:maxHeight="125dp" 
        android:maxWidth="125dp" 
        android:layout_alignParentLeft="false" 
        android:layout_alignParentStart="true" 
        android:layout_margin="10dp" /> 

       <TextView 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:id="@+id/item_content_subtitle" 
        android:textAppearance="?android:attr/textAppearanceMedium" 
        android:text="Subtitle" 
        android:layout_alignTop="@+id/item_content_image" 
        android:layout_toRightOf="@+id/item_content_image" 
        android:layout_toEndOf="@+id/item_content_image" 
        android:textSize="20dp" 
        android:textStyle="bold" /> 

       <TextView 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:id="@+id/item_content_pubdate" 
        android:textAppearance="?android:attr/textAppearanceSmall" 
        android:text="Date" 
        android:layout_below="@+id/item_content_subtitle" 
        android:layout_alignLeft="@+id/item_content_subtitle" 
        android:layout_alignStart="@+id/item_content_subtitle" 
        android:textSize="10dp" 
        android:layout_marginTop="10dp" /> 

      </RelativeLayout> 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:id="@+id/item_content_content" 
       android:textAppearance="?android:attr/textAppearanceMedium" 
       android:text="blabla" 
       android:layout_below="@+id/item_content_pubdate" 
       android:layout_alignStart="@+id/item_content_pubdate" 
       android:layout_alignParentStart="true" 
       android:layout_margin="10dp" /> 

     </LinearLayout> 
    </ScrollView> 

</LinearLayout> 
+0

你的XML包含,如果有問題的錯誤 –

回答

1

嘗試使用的LinearLayout與佈局重這避免衝突。你的第一個RelativeLayout的更改下面一個

<LinearLayout 
     android:id="@+id/item_content_action_bar_layout" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:background="@color/_white" 
     android:orientation="horizontal" 
     android:padding="10dp" 
     android:weightSum="7"> 

     <ImageButton 
      android:id="@+id/item_content_back_button" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_marginRight="5dp" 
      android:layout_weight="2" 
      android:background="@drawable/chemist" /> 

     <TextView 
      android:id="@+id/item_content_title" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center" 
      android:layout_weight="5" 
      android:autoText="false" 
      android:gravity="center" 
      android:maxLines="2" 
      android:singleLine="true" 
      android:text="Title" 
      android:textAppearance="?android:attr/textAppearanceMedium" 
      android:textColor="@color/Black" 
      android:textStyle="bold" /> 

    </LinearLayout> 
+0

通知我。@伊戈爾·多岑科 –

0

改變你RelativeLayoutLinearLayout和使用佈局android:layout_weight屬性做到這一點。

<LinearLayout 

      android:id="@+id/item_content_action_bar_layout" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:background="@color/_white" 
      android:orientation="horizontal" 
      android:padding="10dp" 
      android:weightSum="1"   
      > 

      <ImageButton 

      android:id="@+id/item_content_back_button" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_marginRight="5dp"    
      android:background="@drawable/chemist" /> 


      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:id="@+id/item_content_title" 
       android:textAppearance="?android:attr/textAppearanceMedium" 
       android:text="Title" 
       android:textColor="@color/colorWhite" 
       android:textAlignment="center" 
       android:singleLine="true" 
       android:layout_gravity="center_vertical" 
       android:textStyle="bold" 
       android:gravity="center" 
       android:layout_weight="1" 
       android:autoText="false"/> 
    </LinearLayout> 
0

讓TextView的item_content_title的layout_gravity爲 「CENTER_HORIZONTAL」。

並添加android:layout_toLeftOf="@+id/item_content_title"的ImageButton的item_content_back_button下。

希望這是你想要的。

0

你的動作條的佈局必須像這個 -

<RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:id="@+id/item_content_action_bar_layout" 
     android:layout_alignParentTop="true" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:background="@color/colorBlue" 
     android:padding="10dp"> 
     <ImageButton 
      android:layout_width="120dp" 
      android:layout_height="45dp" 
      android:id="@+id/item_content_back_button" 
      android:background="@drawable/back_button_selector" 
      android:layout_centerVertical="true" 
      android:layout_alignParentLeft="true" 
      android:layout_marginRight="5dp" /> 
     <TextView 
      android:toRightOf="@id/item_content_back_button" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:id="@+id/item_content_title" 
      android:textAppearance="?android:attr/textAppearanceMedium" 
      android:text="Title" 
      android:textColor="@color/colorWhite" 
      android:textAlignment="center" 
      android:singleLine="true" 
      android:layout_gravity="center_vertical" 
      android:textStyle="bold" 
      android:autoText="false" 
      android:layout_centerInParent="true" /> 
    </RelativeLayout> 
相關問題