2

LinearLayout 内に textview と image ビューがあるアプリケーションを実行しています。線形レイアウトに触れると、別のアクティビティに移動します。テキストがテキストビュー内に収まらないため、テキストビューのコンテンツマーキーを作成したいと考えています。私は多くの方法を試しましたが、うまくいきません。xml の内容を以下に示します。

<LinearLayout
    android:id="@+id/profile_pic_Layout"
    android:layout_width="fill_parent"
    android:layout_height="100dip"
    android:layout_margin="10dip"
    android:background="@color/blue_background" >

    <ImageView
        android:id="@+id/profile_pic_menu"
        android:layout_width="100dip"
        android:layout_height="100dip"
        android:contentDescription="@string/image"
        android:scaleType="centerCrop" />

    <TextView
        android:id="@+id/profile_name_text"
        android:layout_width="fill_parent"
        android:layout_height="30dip"
        android:layout_gravity="bottom"
        android:gravity="center"
        android:marqueeRepeatLimit="1"
        android:inputType="text"
        android:lines="1"
        android:duplicateParentState="true"
        android:scrollHorizontally="true"
        android:fadingEdge="horizontal"
        android:focusable="true"
        android:textColor="@android:color/white"
        android:textSize="20sp">
        <requestFocus android:focusable="true" 
            android:focusableInTouchMode="true"
            android:duplicateParentState="true"  /> 
    </TextView>
</LinearLayout>

また、コードで選択したテキストビューを設定しようとしましたが、

profileNameTextView.setEllipsize(TruncateAt.MARQUEE);
profileNameTextView.setSelected(true);

親のlinearlayoutにフォーカスがあるからだと思います。この問題を解決するのを手伝ってください..!

よろしくお願いします..!

4

2 に答える 2

1

どうやらあなたはandroid:ellipsize="marquee"属性を逃しています

最小限の作業例を次に示します。

   <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:marqueeRepeatLimit="1"
        android:singleLine="true"
        android:ellipsize="marquee"
        android:focusable="true"
        android:focusableInTouchMode="true"
        android:text="HELLO HOW ARE YOU WHAT ARE YOU DOING TEST ANDROID IS WRITING TO YOU." />
于 2012-08-24T13:56:46.010 に答える