2

TextView次のように、曲がった線で下線を引きます。

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

背景のドローアブルがこれに適していると思いましたが、それを実現する方法がわかりません。誰かアイデアがありますか?

4

2 に答える 2

0

9-patchお気に入りの画像エディターで作成した画像からの画像を使用してその背景を作成するか(非常に簡単に実行できるはずです)、xml ドローアブルを作成することができます。そのタイプのドローアブルを xml で作成するには、ClipDrawable別のドローアブルをクリップする を使用しますShape。したがって、次のようになります。

background.xml (これは の背景になりますTextView):

<?xml version="1.0" encoding="utf-8"?>
<clip xmlns:android="http://schemas.android.com/apk/res/android"
    android:clipOrientation="vertical"
    android:drawable="@drawable/background_shape"
    android:gravity="bottom" />

およびbackground_shape.xmlファイル:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >

    <corners
        android:bottomLeftRadius="15dp"
        android:bottomRightRadius="15dp" />

    <solid android:color="#ffffff" />

    <padding
        android:bottom="5dp"
        android:left="7dp"
        android:right="7dp" />

    <stroke
        android:width="2dp"
        android:color="#000000" />

</shape>

次に、アクティビティで、そのバックグラウンド ドローアブルを取得し、TextViewそのレベルを設定します。

ClipDrawable clip = (ClipDrawable) findViewById(R.id.textView1).getBackground();
clip.setLevel(5000);

角の半径、パディング、およびClipDrawable.

xml ドローアブルで正確な画像を取得できるかどうかはわかりません。

于 2012-07-16T10:16:01.577 に答える
-1

shape.xml (このファイルをドローアブルに保存します)

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
    <stroke
        android:width="1dp"
        android:color="#000000"/>    <!-- This is the Border Color For TextView-->
<!-- "#5D2E8C"  -->
    <solid android:color="#ffffff" />   <!-- background to the TextView -->
    <padding
        android:bottom="2dp"
        android:left="2dp"
        android:right="2dp"
        android:top="2dp" />
    <corners android:radius="20dp" />

</shape>  

次に、TextViewのbackgroundプロパティを次のように設定します::

<TextView
    android:layout_width="wrap_content"  
    android:layout_height="wrap_content"
    android:background="@drawable/shape"
/>
于 2012-07-16T09:55:06.007 に答える