0

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

目前,我的风格是这样的:

<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没有帮助的情况下。

至于右/左对齐 - 很好,字母位于文本视图的中心。

我将不胜感激您可能需要提供的任何帮助..

4

2 回答 2

0

万一其他人有这个问题:我想出了一种解决问题的方法:如果你在代码后面设置填充,问题就解决了(至少对我来说..)

TextView tv = findViewById(...);
tv.setPadding( 0, -25,0,0);
于 2013-06-22T13:22:05.203 回答
0

尝试指定textSize,并使其小于您的 BoxSize 尺寸。不同的字母有不同的尺寸,因此很难在不同密度的设备上正确识别。

于 2013-06-22T11:54:20.407 回答