2

我有两个问题:

1)我有几个这样创建的 TextView

<TextView
    android:id="@+id/listaNumeriTextView"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_centerVertical="true"
    android:background="#CCCCCC"
    android:gravity="center"/>

当我调用 setText() 时,TextView 的大小会根据我的文本长度而变化。我试图调用 invalidate() 但我仍然有同样的问题。我该如何解决?

2)我想我可以根据屏幕大小设置我的 TextView 的宽度。例如,如果我在同一行上有 2 个 TextView,我可以这样做 textViewSize = screenSize/2. 这是设置视图宽度的正确方法吗?

4

3 回答 3

2

1)对第一个问题的回应: 您可以使用特定widthTextView而不是wrap_content(如果您想将高度限制为 x 大小,则高度相同):

<TextView
    android:id="@+id/listaNumeriTextView"
    android:layout_width="140dp"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_centerVertical="true"
    android:background="#CCCCCC"
    android:gravity="center"/>

2)对第二个问题的回应: 您可以使用android:layout_weight指定两者TextViews都应采用屏幕尺寸的一半,如下所示:

<LinearLayout bla bla 
   bla bla bla 
   android:orientation="horizontal"
   android:layout_width="match_parent"
   android:layout_height="wrap_content">
   <TextView
        android:id="@+id/txtView1"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:background="#CCCCCC"
        android:text="TextView 1"/>
   <TextView
        android:id="@+id/txtView2"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:background="#CCCCCC"
        android:gravity="center"
        android:text="TextView 1"/>
</LinearLayout> 
于 2013-02-14T12:02:39.313 回答
0

试试这个代码

LayoutParams params = aboutmetxt.getLayoutParams();
                params.width = 100;
                aboutmetxt.setLayoutParams(params);

我用它来设置高度

于 2013-02-14T11:29:34.673 回答
0
<TextView
    android:id="@+id/listaNumeriTextView"
    android:layout_width="XXX"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_centerVertical="true"
    android:background="#CCCCCC"
    android:gravity="center"/>

XXX 指定要保留的宽度。它将是恒定的。例如:100dp

于 2013-02-14T11:39:15.437 回答