android上的textview中的字母太低了

时间:2013-06-22 11:35:09

标签: android android-layout textview

我开发了一款游戏,其中包含一个带有1个字母的textview框。 在模拟器中一切正常,但是,当我试图在手机上看到它时,字母向下移动,并在中间切出字母。

目前,我的风格如此:

<style name="MoveLetter">
    <item name="android:layout_width">@dimen/BoxSize</item>
    <item name="android:layout_height">@dimen/BoxSize</item>
    <item name="android:background">@drawable/blue_box_md_lighter</item>
    <item name="android:contentDescription">@string/temp</item>
    <item name="android:gravity">center</item>
    <item name="android:scaleType">fitCenter</item>
    <item name="android:textStyle">bold</item>
    <item name="android:typeface">serif</item>
    <item name="android:visibility">visible</item>
</style>

我在我的xml(部分)中使用这种风格:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/game7_336letters"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/woodbackground1lighter_a_rotated"
    android:orientation="vertical" >

<TextView style="@style/MoveLetter" android:id="@+id/game7_moveletter1"
    android:layout_marginLeft="180dp" android:layout_marginTop="30dp" android:textIsSelectable="true" />
<TextView style="@style/MoveLetter" android:id="@+id/game7_moveletter2"
    android:layout_marginLeft="240dp" android:layout_marginTop="30dp" android:textIsSelectable="true" />
<TextView style="@style/MoveLetter" android:id="@+id/game7_moveletter3"
    android:layout_marginLeft="300dp" android:layout_marginTop="30dp" android:textIsSelectable="true" />
<TextView style="@style/MoveLetter" android:id="@+id/game7_moveletter4"
    android:layout_marginLeft="180dp" android:layout_marginTop="175dp" android:textIsSelectable="true" />
<TextView style="@style/MoveLetter" android:id="@+id/game7_moveletter5"
    android:layout_marginLeft="240dp" android:layout_marginTop="175dp" android:textIsSelectable="true" />
<TextView style="@style/MoveLetter" android:id="@+id/game7_moveletter6"
    android:layout_marginLeft="300dp" android:layout_marginTop="175dp" android:textIsSelectable="true" />

我尝试了很多选项添加到style - PaddingBottom,PaddingTop, layout_gravity = center, gravity = layout_horizontal, gravity = layout_vertical : all没有帮助。

就右/左对齐而言 - 它的好处,字母位于textview的中心。

我很感激您提供的任何帮助..

2 个答案:

答案 0 :(得分:0)

尝试指定textSize,并使其小于BoxSize尺寸。不同的字母具有不同的尺寸,因此在不同的密度设备上使用它会很棘手。

答案 1 :(得分:0)

让其他人有这个问题:我找到了解决问题的方法: 如果你在代码行为上设置填充,问题就解决了(对我来说至少......)

TextView tv = findViewById(...);
tv.setPadding( 0, -25,0,0);