2010-11-22 75 views
3

我想將TextView中的文本相對於父佈局居中放置,而不是相對於textview。在此代碼在想相對於佈局的中心文本

例居中相對文本list_title我的屏幕寬度:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
android:layout_width="fill_parent" 
android:layout_height="wrap_content"> 
<TextView 
     android:layout_weight="75" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:id="@+id/list_title" /> 
    <Button 
     android:layout_weight="15" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:minWidth="90px" 
     android:text="@string/filter" 
     android:visibility="gone" 
     android:id="@+id/button_filter" /> 
</LinearLayout> 

你有一個解決方案嗎?

感謝您的幫助

回答

0

哼,這不是一個很好的解決方案,但如果你知道你的標題lenght,您可以添加

android:paddingLeft="160dip" 

您的TextView。

更換160dip 160 - 您的標題/ 2,將幾乎集中所有屏幕上的lenght ...

編輯:或者,如果你想在其他的解決方案,你必須使用相對佈局。

+0

如何使用相對佈局要做到這一點?謝謝你的幫助。 – 2010-11-22 17:00:00

+0

你必須用像這樣的相關佈局替換你的線性佈局:你必須放入你的textview寬度填充父母,權重爲0和引力到中心,然後你把你的按鈕放在相對佈局中,權重爲1,layout_gravity爲右。 – Khetzal 2010-11-22 17:24:55

4

我會去與中心的TextView並設置其寬度爲wrap_content:

<TextView 
    android:layout_weight="75" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/list_title" 
    android:layout_centerHorizontal="true" /> 
2

如果我得到它的權利,那麼你希望把你的TextView元素的父視圖的中央/中心?

使你的父母佈局RelativeLayout和設置TextView「父母中心」爲true。

-1

嘗試這樣的事情 -

  <?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:orientation="vertical"> 


       <RelativeLayout android:id="@+id/widget21" 
        android:orientation="horizontal" android:background="@drawable/header" 
        android:layout_height="wrap_content" android:layout_width="wrap_content" 
        android:layout_below="@id/widget20" android:layout_gravity="bottom" 


        > 
         <RelativeLayout android:id="@+id/widget21" 
         android:layout_marginTop="37dip" 
        android:orientation="horizontal" 
        android:layout_height="wrap_content" android:layout_width="fill_parent" 
        android:layout_below="@id/widget20"> 

        <TextView android:id="@+id/section_header_text" 

         android:layout_width="wrap_content" android:textSize="24dip" 
         android:textStyle="bold" 
         android:text="@string/section_header_text" android:layout_height="wrap_content" 
         android:textColor="#ffffff" android:gravity="bottom" 

         android:layout_centerInParent="true" 



         ></TextView> 
         </RelativeLayout> 

       </RelativeLayout> 

       <ListView android:id="@+id/android:list" android:layout_width="fill_parent" 
        android:layout_height="wrap_content" android:scaleType="fitEnd" /> 
       <TextView android:id="@android:id/empty" android:layout_width="fill_parent" 
        android:layout_height="wrap_content" android:text="@string/retrieving_text" 
        android:gravity="center_vertical" android:layout_marginLeft="15dip" 
        android:textAppearance="?android:attr/textAppearanceLarge" 
        android:singleLine="false" android:paddingBottom="2dip" /> 
      </LinearLayout> 
1

試試這個在您的XML:

android:gravity="center"