0

我在 Android 中制作了一个测验应用程序,并使用此布局来显示问题和答案,

<LinearLayout android:layout_height="wrap_content" 
              android:layout_width="fill_parent"
              android:background="@drawable/ans_tab"  //This is the Image for both question and answer
              android:orientation="vertical"  >

<TextView android:layout_height="wrap_content" 
          android:layout_width="wrap_content" 
          android:id="@+id/ques1" 
          android:layout_marginTop="25dp"
          android:layout_marginLeft="15dp"
          android:layout_marginRight="15dp"
          android:layout_marginBottom="10dp"
          android:text="@string/ques1"/>

<RadioGroup android:orientation="vertical" 
            android:layout_height="wrap_content" 
            android:layout_width="match_parent" 
            android:id="@+id/quesoptn"
            android:layout_marginBottom="8dp" >

<RadioButton android:layout_height="wrap_content" 
             android:layout_width="fill_parent" 
             android:id="@+id/ques1_1" 
             android:checked="false" 
             android:layout_marginLeft="5dp"/>

<RadioButton android:layout_height="wrap_content" 
             android:layout_width="fill_parent" 
             android:id="@+id/ques1_2"
             android:checked="false" 
             android:layout_marginLeft="5dp"/>

<RadioButton android:layout_height="wrap_content" 
             android:layout_width="fill_parent" 
             android:id="@+id/ques1_3"
             android:checked="false" 
             android:layout_marginLeft="5dp"/>

<RadioButton android:layout_height="wrap_content" 
             android:layout_width="fill_parent" 
             android:id="@+id/ques1_4"
             android:checked="false"
             android:layout_marginLeft="5dp"/>

</RadioGroup> 

</LinearLayout>

而且我正在从我的数据库中随机获取问题和答案,这里我的问题是,有时从数据库中获取的问题长度很短,然后图像没有根据它进行包装。当问题很短并且图像高度比问题答案部分长时,它看起来很尴尬。当问题长度很长时,它看起来还可以。

所以,我的问题是如何仅在问题长度较短时包装图像高度?

这就是问题大小较短时的样子,

在此处输入图像描述

当问题长度很长时,它看起来还可以,

在此处输入图像描述

所以,当问题长度很短时,请帮助我如何包装图像。我不认为它可以通过xml. 那么,有没有办法在 Android 中以编程方式进行呢?

4

3 回答 3

2

你试过9补丁图像吗?您可以在背景上设置一个 9 补丁图像而不是普通图像,以便它可以根据您的帖子进行调整。您还尝试过 android:layout_width="wrap_content" 吗?

于 2013-10-04T11:57:11.587 回答
2

Insted 给背景图像在 xml 中制作一个形状

这是一个示例 ans_tab.xml:

<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" >

    <gradient
        android:angle="90"
        android:endColor="#FF8800"
        android:startColor="#FFBB33" />

    <corners android:radius="30dp" />

</shape>

将其放入 res/drawable/ans_tab.xml 并删除原始图像文件。

结果应如下所示:

在此处输入图像描述

于 2013-10-04T11:49:14.100 回答
0

使用9个补丁图像,它将根据您的内容自动扩展

于 2013-10-04T12:32:37.067 回答