jxlovqqvo
2015-09-16 06:44
采纳率: 33.3%
浏览 3.0k

安卓TextView的gravity和字体大小为什么会影响旁边的TextView布局位置,求大神帮忙

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" >



    <TextView
        android:layout_width="150dp"
        android:layout_height="60dp"
        android:gravity="center"
        android:background="#8f00" />

    <TextView
        android:layout_width="100dp"
        android:layout_height="60dp"
        android:background="#8f00"
        android:gravity="center"
        android:text="一月"
        android:textSize="20dp"
        android:textColor="#a4a0a0"
        />
</LinearLayout>

这个是字体不一样时候的布局,可以看见位置有一点偏移
图片说明

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" >



    <TextView
        android:layout_width="150dp"
        android:layout_height="60dp"
        android:background="#8f00" />

    <TextView
        android:layout_width="100dp"
        android:layout_height="60dp"
        android:background="#8f00"
        android:gravity="center"
        android:text="一月"
        android:textSize="20dp"
        android:textColor="#a4a0a0"
        />
</LinearLayout>

这个是gravity一个设置了一个没有时候的布局,布局完全变了
图片说明

如果没有后面的TextView那么前面的TextView就是紧挨着左上方对吧,但是现在后面有一个TextView并且字体大小一样gravity也一样那么前面的位置不会变化的,现在这两个的字体和gravity不一样就出现了前面一个位置发生变化了,我想问的就是TextView的宽高都写的定值,那么这两个属性只影响自己内部的字体大小和字的摆放位置,但是却不是,因为后面TextView的字体和gravity属性却影响了前面的TextView在布局中的位置,我就想知道为什么会出现这个情况

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

6条回答 默认 最新

  • bdmh 2015-09-16 07:31
    已采纳

    设置layout的 android:baselineAligned="false"

    打赏 评论
  • _H_JY 2015-09-16 06:54

    表示看不懂要表达的意思,o(︶︿︶)o 唉

    打赏 评论
  • jxlovqqvo 2015-09-16 07:08

    如果没有后面的TextView那么前面的TextView就是紧挨着左上方对吧,但是现在后面有一个TextView并且字体大小一样gravity也一样那么前面的位置不会变化的,现在这两个的字体和gravity不一样就出现了前面一个位置发生变化了,我想问的就是TextView的宽高都写的定值,那么这两个属性只影响自己内部的字体大小和字的摆放位置,但是却不是,因为后面TextView的字体和gravity属性却影响了前面的TextView在布局中的位置,我就想知道为什么

    打赏 评论
  • 月盡天明 2015-09-16 07:18

    字体也是有大小的。、

    打赏 评论
  • bdmh 2015-09-16 07:38

    如果android:baselineAligned="true",layout会保持文字对齐模式,所以你看到错乱了

    打赏 评论
  • 东风玖哥 2015-09-16 10:03

    字体也是有大小的
    设置layout的 android:baselineAligned="false"

    打赏 评论

相关推荐 更多相似问题