0

テキストをストロークさせたい。カスタムのストライクライン画像を使用しています。これまでのところ、私はこれを行いました:

<RelativeLayout
    android:id="@+id/title_container"
    android:layout_centerVertical="true"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="#FFFF0000">

    <TextView
        android:id="@+id/title"
        android:layout_centerVertical="true"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:duplicateParentState="true"
        android:singleLine="true"
        android:ellipsize="end"
        android:textColor="@color/title_text"
        android:textSize="18dp"
        android:background="#FF00FF00"
         />

    <ImageView
        android:id="@+id/title_strike_through"
        android:contentDescription="@null"
        android:layout_centerVertical="true"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:duplicateParentState="true"
        android:src="@drawable/title_strike"/>

</RelativeLayout>

現在の問題は、title_containerレイアウトがウィンドウの幅全体に広がり、その結果、title_strike_throughも伸びることです。すべきではありません!必要なのは、title_strike_throughをテキスト全体に拡大することだけです。私は何をすべきか?

4

5 に答える 5

2

以下のプロパティをimageviewに追加して、textviewの幅と等しくします。

android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@id/title"
android:layout_alignRight="@id/title"
于 2012-12-13T07:05:56.630 に答える
1

特定のスペースを占有する場合は、プロパティを設定する必要がありlayout_widthます。画面の一部を占めるようにする場合は、layout_weightプロパティを設定する必要があります。

于 2012-12-13T04:41:12.260 に答える
1

プログラムでの幅をの幅に設定しImageViewますTextView。コンテンツをラップするように設定されている場合、レイアウトが幅全体に及ぶ理由はわかりませんが...

于 2012-12-13T04:29:45.060 に答える
1
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/title_container"
    android:layout_centerVertical="true"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="#FFFF0000">

    <TextView
        android:id="@+id/title"
        android:layout_centerVertical="true"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:duplicateParentState="true"
        android:singleLine="true"
        android:ellipsize="end"
        android:textColor="@color/titleText"
        android:textSize="18dp"
        android:background="#FF00FF00"
         />

    <ImageView
        android:id="@+id/title_strike_through"
        android:contentDescription="@null"
        android:layout_centerVertical="true"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:duplicateParentState="true"
        android:src="@drawable/ic_launcher"/>

</RelativeLayout>

これはあなたが欲しいものですか私に知らせてください..

于 2012-12-13T05:05:06.617 に答える
0

これを試して..

<RelativeLayout
    android:id="@+id/title_container"
    android:layout_centerVertical="true"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="#FFFF0000">
<LinearLayout
 android:layout_centerVertical="true"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" 
android:duplicateParentState="true">

<TextView
        android:id="@+id/title"

        android:layout_width="match_parent"
        android:layout_height="wrap_content"

        android:singleLine="true"
        android:ellipsize="end"
        android:textColor="@color/title_text"
        android:textSize="18dp"
        android:background="#FF00FF00"
         />

    <ImageView
        android:id="@+id/title_strike_through"
        android:contentDescription="@null"

        android:layout_width="match_parent"
        android:layout_height="match_parent"

        android:src="@drawable/title_strike"/>
</LinearLayout>

</RelativeLayout>
于 2012-12-13T04:48:34.367 に答える