textview中的Android文本对齐错误
我正在尝试将textview中的文本与中心对齐(垂直和水平)。 虽然垂直对齐在Android Studio预览中工作正常,但在模拟器上失败 设计: android studio预览版: 模拟器: 守则:textview中的Android文本对齐错误,android,xml,textview,Android,Xml,Textview,我正在尝试将textview中的文本与中心对齐(垂直和水平)。 虽然垂直对齐在Android Studio预览中工作正常,但在模拟器上失败 设计: android studio预览版: 模拟器: 守则: <RelativeLayout android:id="@+id/teamsBox" android:layout_width="match_parent" android:layout_height="185dp"> <LinearLa
<RelativeLayout
android:id="@+id/teamsBox"
android:layout_width="match_parent"
android:layout_height="185dp">
<LinearLayout
android:layout_width="154dp"
android:layout_height="wrap_content"
android:background="@drawable/team_bg"
android:padding="6dp"
android:layout_alignParentLeft="true"
android:orientation="vertical">
<EditText
android:id="@+id/teamOneName"
android:layout_width="143dp"
android:layout_height="42dp"
android:text="HOME"
android:textColor="@color/my_white"
android:background="@color/my_transparent"
android:textSize="23sp"
android:singleLine="true"
android:gravity="center"/>
<TextView
android:id="@+id/teamOneScore"
android:layout_width="143dp"
android:layout_height="132dp"
android:text="3"
android:textColor="@color/my_green"
android:textSize="127sp"
android:gravity="center"/>
</LinearLayout>
<LinearLayout
android:layout_width="154dp"
android:layout_height="match_parent"
android:background="@drawable/team_bg"
android:padding="6dp"
android:layout_alignParentRight="true"
android:orientation="vertical">
<EditText
android:id="@+id/teamTwoName"
android:layout_width="match_parent"
android:layout_height="42dp"
android:text="AWAY"
android:textColor="@color/my_white"
android:background="@color/my_transparent"
android:textSize="23sp"
android:singleLine="true"
android:gravity="center"/>
<TextView
android:id="@+id/teamTwoScore"
android:layout_width="fill_parent"
android:layout_height="132dp"
android:text="1"
android:textColor="@color/my_green"
android:textSize="127sp"
android:gravity="center"
android:layout_gravity="center"/>
</LinearLayout>
</RelativeLayout>
编辑:我已根据答案更改为布局,但错误仍在发生。
这是我的新布局:
<RelativeLayout
android:id="@+id/teamsBox"
android:layout_width="match_parent"
android:layout_height="185dp">
<LinearLayout
android:layout_width="154dp"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:background="@drawable/team_bg"
android:orientation="vertical"
android:padding="6dp" >
<EditText
android:id="@+id/teamOneName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="HOME"
android:textColor="@color/my_white"
android:background="@color/my_transparent"
android:textSize="23sp"
android:singleLine="true"
android:padding="8dp"
android:gravity="center"/>
<TextView
android:id="@+id/teamOneScore"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:text="3"
android:textColor="@color/my_green"
android:textSize="127sp"
android:gravity="center_vertical|center_horizontal"/>
</LinearLayout>
<LinearLayout
android:layout_width="154dp"
android:layout_height="match_parent"
android:background="@drawable/team_bg"
android:padding="6dp"
android:layout_alignParentRight="true"
android:orientation="vertical">
<EditText
android:id="@+id/teamTwoName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="AWAY"
android:textColor="@color/my_white"
android:background="@color/my_transparent"
android:textSize="23sp"
android:singleLine="true"
android:padding="8dp"
android:gravity="center"/>
<TextView
android:id="@+id/teamTwoScore"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:text="1"
android:textColor="@color/my_green"
android:textSize="127sp"
android:gravity="center"
android:layout_gravity="center"/>
</LinearLayout>
</RelativeLayout>
将文本视图的
android:gravity
设置为垂直居中|水平居中
<TextView
android:id="@+id/teamOneScore"
android:layout_width="143dp"
android:layout_height="132dp"
android:text="3"
android:textColor="@color/my_green"
android:textSize="127sp"
android:gravity="center_vertical | center_horizontal" />
删除硬编码的
宽度
和高度
并使用重量
。尝试以下数据
<RelativeLayout
android:id="@+id/teamsBox"
android:layout_width="match_parent"
android:layout_height="185dp" >
<LinearLayout
android:layout_width="154dp"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:background="@drawable/button_background"
android:orientation="vertical"
android:padding="6dp" >
<EditText
android:id="@+id/teamOneName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#123456"
android:gravity="center"
android:singleLine="true"
android:text="HOME"
android:textSize="23sp" />
<TextView
android:id="@+id/teamOneScore"
android:layout_width="match_parent"
android:layout_height="0dp"
android:gravity="center_vertical|center_horizontal"
android:text="3"
android:layout_weight="1"
android:textSize="127sp" />
</LinearLayout>
<LinearLayout
android:layout_width="154dp"
android:layout_height="match_parent"
android:layout_alignParentRight="true"
android:background="@drawable/button_background"
android:orientation="vertical"
android:padding="6dp" >
<EditText
android:id="@+id/teamTwoName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#123456"
android:gravity="center"
android:singleLine="true"
android:text="AWAY"
android:textSize="23sp" />
<TextView
android:id="@+id/teamTwoScore"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="center"
android:gravity="center_vertical|center_horizontal"
android:text="1"
android:layout_weight="1"
android:textSize="127sp" />
</LinearLayout>
</RelativeLayout>
希望这个能起作用试试这个它可能会对你有所帮助
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/holo_green_light" >
<LinearLayout
android:layout_width="154dp"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:orientation="vertical"
android:padding="6dp" >
<EditText
android:id="@+id/teamOneName"
android:layout_width="143dp"
android:layout_height="42dp"
android:background="@android:color/holo_green_dark"
android:gravity="center"
android:singleLine="true"
android:text="HOME"
android:textColor="@android:color/white"
android:textSize="23sp" />
<TextView
android:id="@+id/teamOneScore"
android:layout_width="143dp"
android:layout_height="132dp"
android:gravity="center"
android:text="3"
android:background="@android:color/white"
android:textSize="127sp" />
</LinearLayout>
<LinearLayout
android:layout_width="154dp"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:orientation="vertical"
android:padding="6dp" >
<EditText
android:id="@+id/teamTwoName"
android:layout_width="match_parent"
android:layout_height="42dp"
android:background="@android:color/holo_green_dark"
android:gravity="center"
android:singleLine="true"
android:text="AWAY"
android:textColor="@android:color/white"
android:textSize="23sp" />
<TextView
android:id="@+id/teamTwoScore"
android:layout_width="fill_parent"
android:layout_height="132dp"
android:layout_gravity="center"
android:gravity="center"
android:text="1"
android:background="@android:color/white"
android:textSize="127sp" />
</LinearLayout>
</RelativeLayout>
具有编辑文本和一个文本视图高度的线性布局小于您为其子级指定的高度。请计算编辑文本和文本视图的高度,并相应调整线性布局的高度 在这里,您只需要将wrap_内容提供给您的文本视图和视图
1. change in text view
android:layout_height="132dp"
To
android:layout_height="wrap_content"
2. Increase you linear layout height to
android:layout_width="184dp"
3. remove below pading tag from your linear layout
android:padding="6dp"
它将解决您的问题。只需使用match\u parent作为文本视图的高度。问题在于文本视图本身,文本的大尺寸不是由重力属性计算的
尝试将此属性添加到文本视图android:includeFontPadding=“false”将padding设置为TextView将margin\u top=“2dp”设置为TextView无法解决此问题。。我把更新后的布局放在问题主体中,你可以看看它没有解决问题。。我把更新后的版式放在问题正文中,你可以看看它的工作方式,就像一个魅力!谢谢,亲爱的。