2012-03-15 81 views
0

我需要在单行上有各种文本视图。然后我想要以单线为中心。就好像它们是用单个文本视图编写的一样。所以我使用线性布局。但我的问题是当我倾斜到纵向,文字是垂直下降。我想,如果文本不适合在屏幕上,那么他们必须来到下一行中心上倾斜。我的问题与https://stackoverflow.com/questions/9596493/linear-layout-is-not-keeping-text-view-in-center有点相同。请任何身体帮助。我的layout.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"> 

//some code here 


    <LinearLayout 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:orientation="horizontal" 
      android:layout_marginBottom="30dp" 
      android:layout_gravity="center_horizontal" > 

      <TextView 
      android:id="@+id/tv_jobs_info_note" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:textColor="#000000" 
      android:text="@string/jobs_info_note" 
      android:textSize="20dp" 
      android:paddingRight="5dp" 
      /> 

      <TextView 
      android:id="@+id/tv_my_job" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:text="@string/my_job" 
      android:clickable="true" 
      android:textColor="#0000FF" 
      android:onClick="onWorkListClick" 
      android:textSize="20dp" 
      android:paddingRight="5dp" 
      /> 

      <TextView 
      android:id="@+id/tv_jobs_info_note_mid" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:textColor="#000000" 
      android:text="@string/jobs_info_note_mid" 
      android:textSize="20dp" 
      android:paddingRight="5dp" 
      /> 

      <TextView 
      android:id="@+id/tv_team_job" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:textColor="#0000FF" 
      android:clickable="true" 
      android:onClick="onWorkListClick" 
      android:text="@string/team_job" 
      android:textSize="20dp" 
      android:paddingRight="5dp" 
      /> 

      <TextView 
      android:id="@+id/tv_jobs_info_note_end" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:text="@string/jobs_info_note_end" 
      android:textColor="#000000" 
      android:textSize="20dp" 
      android:paddingRight="5dp" 
      /> 

     </LinearLayout> 
     //Some more code here 
     <ImageView 
      android:id="@+id/img_current_job_map" 
      android:layout_gravity="center_horizontal|bottom" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:src="@drawable/map" /> 
    </LinearLayout> 

有没有其他的方式来做到这一点,任何帮助将不胜感激。

+0

我的建议是使用'相对布局',你可以使用'align_toLeftOf'等属性来将'TextViews'放在一起。尽可能避免嵌套布局。 – Ghost 2012-03-15 05:32:38

+0

我只是在早些时候才使用它,但是整条线路并不在中心。 – Android 2012-03-15 05:44:48

+0

当你说**中心**时,你究竟意味着什么? – Ghost 2012-03-15 05:46:28

回答

0

我试过使用不同的字体大小。虽然它不是正确的方式,但仍然没有选择。请给我建议,如果有更好的替代方案

0

也许你正在寻找的东西是这样的:

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

    <TextView 
     android:id="@+id/textView1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentTop="true" 
     android:layout_marginLeft="35dp" 
     android:layout_marginTop="175dp" 
     android:text="TextView" /> 

    <TextView 
     android:id="@+id/textView2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBottom="@+id/textView1" 
     android:layout_marginLeft="8dp" 
     android:layout_toRightOf="@+id/textView1" 
     android:text="TextView" /> 

    <TextView 
     android:id="@+id/textView3" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/textView2" 
     android:layout_alignBottom="@+id/textView2" 
     android:layout_marginLeft="8dp" 
     android:layout_toRightOf="@+id/textView2" 
     android:text="TextView" /> 

    <TextView 
     android:id="@+id/textView4" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/textView3" 
     android:layout_alignBottom="@+id/textView3" 
     android:layout_marginLeft="8dp" 
     android:layout_toRightOf="@+id/textView3" 
     android:text="TextView" /> 

    <TextView 
     android:id="@+id/textView5" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_below="@+id/textView1" 
     android:layout_marginTop="40dp" 
     android:layout_marginLeft="8dp" 
     android:text="TextView" /> 

    <TextView 
     android:id="@+id/textView6" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/textView5" 
     android:layout_alignBottom="@+id/textView5" 
     android:layout_marginLeft="8dp" 
     android:layout_toRightOf="@+id/textView5" 
     android:text="TextView" /> 

    <TextView 
     android:id="@+id/textView7" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBottom="@+id/textView6" 
     android:layout_marginLeft="8dp" 
     android:layout_toRightOf="@+id/textView6" 
     android:text="TextView" /> 

    <TextView 
     android:id="@+id/textView8" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBottom="@+id/textView7" 
     android:layout_marginLeft="8dp" 
     android:layout_toRightOf="@+id/textView7" 
     android:text="TextView" /> 

    <TextView 
     android:id="@+id/textView9" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBottom="@+id/textView8" 
     android:layout_toRightOf="@+id/textView8" 
     android:layout_marginLeft="8dp" 
     android:text="TextView" /> 

</RelativeLayout> 

所有你所要做的就是相互喜欢这个地方TextViews,我相信这应该工作。希望这可以帮助。

+0

感谢您承受如此多的痛苦,但是这段代码正在剪切那些不在同一行的文本。这意味着垂直下落的文本现在不在屏幕上显示。 – Android 2012-03-15 08:52:57

+0

哦,天啊! – Ghost 2012-03-15 12:01:48