検索

ホームページ  >  に質問  >  本文

Android开发中Progress需要两边都是圆角怎么办?

这里的两边都是圆角,指的是progressbar的progress部分
比如,需要这个效果:

如果使用shape,progress的右边是直角,所以使用了.9图
但是实际中,设置progress为10了之后(max为100),整体还是很宽,感觉像是progress属性不能用了

原始界面文件中的使用:

<ProgressBar
        android:id="@+id/live_channel_progres"
        style="?android:attr/progressBarStyleHorizontal"
        android:layout_width="112dp"
        android:layout_height="15dp"
        android:max="100"
        android:progress="10"
        android:progressDrawable="@drawable/progress_bg" />

progress的drawable:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
 
    <!-- 背景  gradient是渐变,corners定义的是圆角 -->
    <item android:id="@android:id/background">
        <shape>
            <corners android:radius="30dp" />
 
            <solid android:color="#ff0" />
        </shape>
    </item>
    <!-- 进度条 -->
    <item android:id="@android:id/progress" android:drawable="@drawable/live_channel_progress"/>
    
 
</layer-list>
怪我咯怪我咯2810日前958

全員に返信(2)返信します

  • PHP中文网

    PHP中文网2017-04-17 15:08:28

    私の質問が明確ではないため、誤解を招いている可能性があります。現在の要件は次のとおりです。

    進行状況の進行部分は両側の角が丸い必要があります

    最初からシェイプを使ってみましたが、うまくいきませんでした
    1階の答えをコピーして試してみましたが、最初の結果と同じでした

    .9 の画像を使用する場合は、次の質問を入力するだけでこの問題を回避できます:

    リーリー

    この部分を変更するだけです:

    リーリー

    これは、clip属性を指定するとプログレスバーがクリップしてしまうので、アイテム内でスケールを使う必要があるためです。写真。

    http://stackoverflow.com/questions/2078809/progress-bar-rounded-on-both-sides-in-android

    返事
    0
  • 迷茫

    迷茫2017-04-17 15:08:28

    リーリー

    スタイル:

    リーリー

    進捗_有効性:

    リーリー

    フォーマットに問題があります。ご自身で解決してください。 。個人テストで正解。

    返事
    0
  • キャンセル返事