1

我尝试过所有内容,但尚未成功。文本大小增加时重叠的Textview + RelativeLayout

发生了什么。当标题文字是小,它也应该在家长的中心,作品完美,但是当文字大小大的重叠,其左双面组件

我想要什么:它不应该不重叠,但是涉及到下一步设置Textview。当尺寸增加时应该调整。

小尺寸 enter image description here

大尺寸 enter image description here

代码

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="56dp" 
    android:background="@android:color/darker_gray" > 


     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent" 
      android:text="Settings" 
      android:gravity="center_vertical" 
      android:layout_alignParentLeft="true" 
      android:textColor="@android:color/holo_orange_dark" 
      android:textSize="16.0sp" /> 


     <TextView 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:text="hiiiiiiiiiiiii StackOverflower!!!!!!!!!!!" 
      android:padding="4dp" 
      android:gravity="center" 
      android:layout_toLeftOf="@+id/txtBack" 
      android:textColor="@android:color/white" 
      android:textSize="19sp" /> 
</RelativeLayout> 
+0

为什么您使用的不是工作将相对布局相对布局。 – dex

回答

1

因为您对这两个TextView使用match_parent,所以它们会根据您的代码重叠,您可以尝试为第二个TextView添加修补填充。例如,我们认为第一个TextView文本“设置”的宽度是100dp,所以我们可以更改代码如下。

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="56dp" 
    android:background="@android:color/darker_gray" > 


    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:text="Settings" 
     android:gravity="center_vertical" 
     android:layout_alignParentLeft="true" 
     android:textColor="@android:color/holo_orange_dark" 
     android:textSize="16.0sp" /> 


    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:text="hiiiiiiiiiiiii StackOverflower!!!!!!!!!!!" 
     android:paddingTop="4dp" 
     android:paddingBottom="4dp" 
     android:paddingLeft="100dp" 
     android:paddingRight="100dp"    
     android:gravity="center" 
     android:layout_toLeftOf="@+id/txtBack" 
     android:textColor="@android:color/white" 
     android:textSize="19sp" /> 
</RelativeLayout> 
+0

感谢它帮助我,但它必须是单线。和字符串应该是可见的不是点dot –

+0

了解,那么我认为你需要使用自动缩放文本视图,这里是你需要的。 http://stackoverflow.com/a/5535672/1297615 – BobGao

+0

已经做到了。谢谢 –

0

组ID到第一个TextView,然后进行第二TextViewtoRightOf第一个。

喜欢这个

<RelativeLayout 
android:layout_width="match_parent" 
android:layout_height="56dp" 
android:background="@android:color/darker_gray" > 


    <TextView 

     android:id="@+id/textview1" 

     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:text="Settings" 
     android:gravity="center_vertical" 
     android:layout_alignParentLeft="true" 
     android:textColor="@android:color/holo_orange_dark" 
     android:textSize="16.0sp" /> 


    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 

     android:layout_toRightOf="@id/textview1" 

     android:text="hiiiiiiiiiiiii StackOverflower!!!!!!!!!!!" 
     android:padding="4dp" 
     android:gravity="center" 
     android:layout_toLeftOf="@+id/txtBack" 
     android:textColor="@android:color/white" 
     android:textSize="19sp" /> 
</RelativeLayout> 

我希望这将有助于。

0

试试这个,

<RelativeLayout 
android:layout_width="match_parent" 
android:layout_height="56dp" 
android:background="@android:color/darker_gray" > 


    <TextView 
     android:id="@+id/txtSetting" 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:text="Settings" 
     android:gravity="center_vertical" 
     android:layout_alignParentLeft="true" 
     android:textColor="@android:color/holo_orange_dark" 
     android:textSize="16.0sp" /> 


    <TextView 
     android:layout_toRightOf="@+id/txtSetting" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:text="hiiiiiiiiiiiii StackOverflower!!!!!!!!!!!" 
     android:padding="4dp" 
     android:gravity="center" 
     android:layout_toLeftOf="@+id/txtBack" 
     android:textColor="@android:color/white" 
     android:textSize="19sp" /> 
</RelativeLayout> 
0

使用layout_toLeftOf,alignParentLeft和alignParentRight

<TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Settings" 
     android:id="@+id/txtBack" 
        android:gravity="center_vertical" 
     android:layout_alignParentLeft="true" 
       android:layout_toLeftOf="@+id/selectaccount" 
     android:textColor="@android:color/holo_orange_dark" 
     android:textAppearance="?android:attr/textAppearanceMedium" /> 


    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="hiiiiiiiiiiiii StackOverflower!!!!!!!!!!!" 
     android:padding="4dp" 
     android:gravity="center" 
     android:layout_alignParentRight="true" 

     android:textColor="@android:color/white" 
     android:textAppearance="?android:attr/textAppearanceMedium" /> 

+0

什么时候文本是小尺寸。无论是小还是大,都应该以父母 –

0

只需更换你的代码通过下图:

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="56dp" 
    android:background="@android:color/darker_gray" > 


    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:text="Settings" 
     android:gravity="center_vertical" 
     android:layout_alignParentLeft="true" 
     android:textColor="@android:color/holo_orange_dark" 
     android:textSize="16.0sp" 
     android:id="@+id/txtSettings" /> 


    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:text="hiiiiiiiiiiiii StackOverflower!!!!!!!!!!!" 
     android:padding="4dp" 
     android:gravity="center" 
     android:layout_toRightOf="@+id/txtSettings" 
     android:layout_toLeftOf="@+id/txtBack" 
     android:textColor="@android:color/white" 
     android:textSize="19sp" /> 
</RelativeLayout> 
+0

为中心,但它不是父母的中心(relativelayout)。尝试使用4个文本字 –

+0

在中心标题中使用CenterInParent =“true”textView – Vickyexpert

+0

您还有一件事是使用txtBack?因为在目前的代码中,我无法看到txtBack声明..所以请检查它,如果你不使用,然后让我知道。 – Vickyexpert

0

改变第二的TextView这样:

<TextView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:text="hiiiiiiiiiiiii StackOverflower!!!!!!!!!!!" 
     android:padding="4dp" 
     android:gravity="center" 
     android:layout_toRightOf="@+id/firstTextview" 
     android:textColor="@android:color/white" 
     android:textSize="19sp" />