0

私は私のを持っていますlayout

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout  xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:orientation="vertical"

        android:gravity="center_horizontal"
         >
             <ImageView
                        android:id="@+id/id_new_big_list_item_image"
                        android:layout_width="fill_parent"
                        android:layout_height="wrap_content"
                        android:adjustViewBounds="true"   
                        android:layout_centerHorizontal="true"   /> 

              <LinearLayout 
                  android:layout_height="wrap_content"
                  android:layout_width="fill_parent"
                  android:orientation="vertical"
                  android:background="@drawable/round_corners_new_bottom" >

                  <TextView
                    android:id="@+id/id_new_big_list_item_name"
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:textSize="12sp"
                    android:textColor="@color/new_restaurant_name"
                    android:paddingTop="5dp"
                    android:paddingLeft="10dp"
                    android:paddingRight="10dp"
                    android:paddingBottom="0dp" />



              </LinearLayout>


</LinearLayout>

テキストビューを使用して、線形レイアウトの上部(中央の水平)と下部に画像を表示する必要があります。画像の幅は異なる場合がありますが、線形レイアウトの幅を画像と同じに設定したいと思います。ただし、テキストが長すぎると、幅が広くなります。どうやってやるの?テキストの幅が画像の幅よりも大きい場合は、2行のテキストを作成します。

出来ますか??

ここに私のレイアウトのスナップ:

ここに画像の説明を入力してください

4

3 に答える 3

1

ImageViewを設定layout_width="wrap_content"し、TextViewを囲む2番目のLinearLayoutを削除します

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout  xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:orientation="vertical"
    android:gravity="center_horizontal" >
    <ImageView
        android:id="@+id/id_new_big_list_item_image"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:adjustViewBounds="true"   
        android:layout_centerHorizontal="true"   /> 

    <TextView
       android:id="@+id/id_new_big_list_item_name"
       android:layout_width="fill_parent"
       android:layout_height="wrap_content"
       android:textSize="12sp"
       android:textColor="@color/new_restaurant_name"
       android:paddingTop="5dp"
       android:paddingLeft="10dp"
       android:paddingRight="10dp"
       android:paddingBottom="0dp" />
</LinearLayout>
于 2012-07-24T09:33:43.920 に答える
1

画像はwrap_contantである必要があり、サイズによって異なります。TextViewはすべての親に配置されます。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout  xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:orientation="vertical"
        android:gravity="center_horizontal" >

        <ImageView
               android:id="@+id/id_new_big_list_item_image"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_centerHorizontal="true"   /> 

       <TextView
               android:background="@drawable/round_corners_new_bottom" 
               android:id="@+id/id_new_big_list_item_name"
               android:layout_width="fill_parent"
               android:layout_height="wrap_content"
               android:textSize="12sp"
               android:textColor="@color/new_restaurant_name" />

</LinearLayout>

幸運を!

于 2012-07-24T09:37:55.847 に答える
0

LinearLayoutここでは、を使用する代わりにRelativeLayout

また、境界をImageViewの幅に合わせて左右に揃えるようにEditText設定します。これにより、テキストの長さがテキストの長さを超えると、EditTextの高さが水平よりも垂直に増加します。

于 2012-07-24T09:36:03.850 に答える