0

私は Gridveiew.In を GridView の getView に渡し、RelativeLayout(画像ビューとテキストビューを子として含む)を渡します。textview のテキストが長すぎるため、水平方向にスクロールしたい。これは私のxmlです。しかし、テキストビューはスクロールしません

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" 
    android:clickable="false">
    <ImageView 
        android:id="@+id/theme_preview"
        android:layout_width="match_parent" 
        android:layout_height="wrap_content"
        android:scaleType="fitXY" />
    <TextView 
        android:id="@+id/theme_name"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/theme_preview"
        android:layout_centerHorizontal="true"
        android:lines="1"
        android:ellipsize="marquee"
        android:scrollHorizontally="true"
        android:marqueeRepeatLimit="marquee_forever"
        />
</RelativeLayout>
4

3 に答える 3

2

この属性TextViewに追加します。

android:scrollHorizontally="true"

または、コードで実行する場合:

textView.setHorizontallyScrolling(true);
于 2012-06-27T08:45:28.320 に答える
0

これを使ってみて、

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="70dp"
        android:layout_height="fill_parent" >

        <ImageView
            android:id="@+id/item_image"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:gravity="center_vertical|center_horizontal"
            android:layout_marginTop="14dp"
            android:src="@drawable/ic_launcher" />

        <TextView
            android:id="@+id/item_text"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_alignBaseline="@+id/item_image"
            android:layout_below="@+id/item_image"
            android:scrollHorizontally="true"
            android:singleLine="true"
            android:freezesText="false"
            android:selectAllOnFocus="false"
            android:ellipsize="marquee"
            android:marqueeRepeatLimit="marquee_forever"
            android:gravity="center_vertical|center_horizontal"
            android:textAppearance="?android:attr/textAppearanceMedium" />

    </RelativeLayout>

GridView アダプター クラスで、textview.setSelected(true) を設定します。

 holder.txtTitle = (TextView) row.findViewById(R.id.item_text); 
 holder.txtTitle.setSelected(true); 
于 2015-01-29T06:30:53.623 に答える
0
Try Using this,   



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


                <ImageView 
                    android:id="@+id/theme_preview"
                    android:layout_width="match_parent" 
                    android:layout_height="wrap_content"
                    android:scaleType="fitXY" />
     <HorizontalScrollView xmlns:android="http://schemas.android.com/apk/res/android"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent">
                <TextView 
                    android:id="@+id/theme_name"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/theme_preview"
                    android:layout_centerHorizontal="true"
                    android:lines="1"
                    android:ellipsize="marquee"
                    android:scrollHorizontally="true"
                    android:marqueeRepeatLimit="marquee_forever"
                    />
    </HorizontalScrollView>
            </RelativeLayout>
于 2012-06-27T09:06:26.687 に答える