Android中的文本视图截断数字

Android中的文本视图截断数字,android,android-layout,android-widget,Android,Android Layout,Android Widget,我在文本视图中设置一个数字时遇到问题,它只显示第一个数字,并截断其余数字。例如,如果我将这个字符串设置为“12345”,它只显示“1”。请注意,如果我在setText方法中硬编码该数字,它会工作,但当我通过Integer.toString设置该数字时,它不会工作。我还为调试干杯,它显示的字符串是正确的 以下是我的活动代码: int inviteCount = inviteArray.size(); String inviteCountString = Integer.toString(invit

我在文本视图中设置一个数字时遇到问题,它只显示第一个数字,并截断其余数字。例如,如果我将这个字符串设置为“12345”,它只显示“1”。请注意,如果我在setText方法中硬编码该数字,它会工作,但当我通过Integer.toString设置该数字时,它不会工作。我还为调试干杯,它显示的字符串是正确的

以下是我的活动代码:

int inviteCount = inviteArray.size();
String inviteCountString = Integer.toString(inviteCount);
inviteCountTextView.setText(inviteCountString);
showToast(inviteCountString); 

protected void showToast(final String text) {
    //   Creates a Toast when there is an error
    runOnUiThread(new Runnable(){
        @Override
        public void run() {
            Toast.makeText(RootActivity.this, text, Toast.LENGTH_SHORT).show(); 
        }
    });
}
这是布局文件的代码

<FrameLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >

    <ImageView
        android:id="@+id/inviteImageView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/friend_invitations_background" />

    <TextView
        android:id="@+id/inviteNumber"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginBottom="2dp"
        android:text="0"
        android:textColor="#88ffffff"
        android:textSize="12sp" />
</FrameLayout>

提前谢谢

编辑:

下面是错误的屏幕截图。正如你所看到的,祝酒词是10。但在顶部的texfield上,只显示了1。同样,如果我写android:text=“10”,它会正确显示


这无疑是一个布局问题。您可以在Eclipse中使用ADT工具检查布局层次结构。很可能
TextView
的宽度被
FrameLayout
限制,只测量其直接子维度,即
ImageView
的维度

老实说,我很困惑为什么它的初始值是正确设置维度,为什么维度不是由所有的孩子决定的

我建议将低效的
FrameLayout
结构替换为带有背景的
TextView
。也许为了缩小问题的范围,您可以简化该视图周围的布局

例如:

<TextView
    android:id="@+id/inviteNumber"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:layout_marginBottom="2dp"
    android:text="0"
    android:textColor="#88ffffff"
    android:textSize="12sp"
    android:background="@drawable/friend_invitations_background" />


这是邀请的数组列表。在这种情况下,它只返回列表的大小。使用String.valueOf方法?您是否尝试删除
android:text=“0”
部分或用更大的部分替换它?您好!谢谢你的回复。我试着输入init“000”文本,它显示ok,直到我动态更改了值,得到了相同的问题。还尝试了String.valueOf,结果相同。在我看来,这可能只是一个布局问题。我不明白为什么它的初始值设置正确。我建议用一个带背景的文本视图来代替框架布局的低效构造。也许为了缩小问题的范围,您可以简化该视图周围的布局。