0

我正在编写一个将始终在 Portrait 中使用的应用程序。我有一个“EditView”,我想在其中占据屏幕的整个宽度,但将文本在屏幕中居中(水平)。通常,在清单文件中,您只需插入 android:layout_gravity="center" 即可。但它根本不起作用(留在左边),我已经尝试了所有 match_parent/wrap_content 的宽度和高度组合。这是我的清单文件。

<?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:gravity="center"
   android:orientation="vertical"
   android:weightSum="2" >

   <LinearLayout
       android:layout_width="match_parent"
       android:layout_height="match_parent"
       android:layout_weight="1"
       android:orientation="vertical" >

       <EditText
          android:id="@+id/text_video_title"
          style="@style/StyleVideoTitle"
          android:layout_width="match_parent"
          android:layout_height="wrap_content"
          android:layout_gravity="center"
          android:ems="10"
          android:inputType="none"
          android:singleLine="true"
          android:text="@string/video_title" >

       </EditText>


       <VideoView
          android:id="@+id/videoView1"
          android:layout_width="match_parent"
          android:layout_height="match_parent"
          android:layout_weight="1" 
          android:layout_gravity="center" >
       </VideoView>
    </LinearLayout>

    <LinearLayout 
          android:baselineAligned="false" 
          android:layout_height="match_parent" 
          android:layout_width="match_parent"
          android:layout_weight="1">
          <GridView android:id="@+id/gridView" 

             android:layout_height="match_parent" 
             android:layout_width="match_parent" 
             android:numColumns="3"
             android:layout_gravity="center">
          </GridView>
</LinearLayout> 

请注意,如果我在 EditView 中将 android:layout_width 更改为“wrap_content”,我会得到一个几乎居中的文本,但实际上并非如此。此外,我检查了 @string/video_title 并且没有前导或尾随空格会弄乱对齐方式。

我使用的样式 style="@style/text_video_title" 是:

<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
    <style name="StyleVideoTitle">
        <item name="android:textColor">#FFFFFF</item>
        <item name="android:background">#000000</item>
        <item name="android:textSize">26sp</item>
    </style>
</resources>

知道如何将字符串居中(从左到右)吗?我在模拟器和真实设备(姜饼)上有相同的行为

4

1 回答 1

1

使用android:gravity而不是android:layout_gravityEditText.

于 2013-04-23T19:05:00.430 回答