2013-04-23 55 views
0

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

<?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”,我得到的几乎中心的文本,但它是不是真的。此外,我检查了@字符串/ video_title,并且没有可能会导致对齐的引导空间或tracing空间。

而且我使用样式=“@风格/ 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> 

任何想法,我怎么能中心(左到右),该字符串?我在模拟器和真实设备上有相同的行为(姜饼)

回答

1

使用android:gravity而不是EditText中的android:layout_gravity

+0

非常感谢Zabri。你用一句话解决了我的问题。这很简单,但我根本没有看到它。 – 2013-04-23 19:09:18