1

上部にラベルが付いた画面があります。このラベルはTextViewで作成されます。背景として、color1から始まり、color2に変更し、color1に戻る垂直方向のグラデーションが必要です。現時点で私は持っています:

<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">

    <stroke android:width="1px" android:color="#000000" /> 
    <gradient
        android:startColor="#FFFFFFFF"
        android:centerColor="#FF8800"
        android:endColor="#FFFFFFFF" 
        android:type="linear"
        android:angle="270" 
/>
    <corners android:radius="10dp"/>
</shape>

私の問題は、centerColorの線が細すぎることです。すべての文字スペースを占有してほしい。グラデーションを速くする方法が見つかりません。私はすでにレイアウトリストを使おうとしましたが、成功しませんでした。

何か案が?

4

1 に答える 1

1

これは従うべきはるかに異なるトラックですが、9パッチの画像ファイルでの作業を検討しましたか?これにより、グラデーションの必要な部分を引き伸ばし、背景を適切にセグメント化することで、中心線を必要なだけ大きくすることができます。

これが私がそれらについて学ぶために使用したいくつかの素晴らしいチュートリアルです: 9パッチチュートリアルを描く

そしてGoogle自身のAndroidの口から: Android9パッチAndroid用の すべての描画可能なリソース

于 2012-12-23T11:38:54.963 に答える