Android 사용자 정의 view 진행 표시 효과 구현

3884 단어 Androidview진도 표
먼저 효과 도 보기:

우선 레이아웃 파일 입 니 다.

<FrameLayout
 android:layout_width="match_parent"
 android:layout_marginLeft="10dp"
 android:layout_marginRight="10dp"
 android:layout_height="wrap_content">

 <ProgressBar
  android:id="@+id/pb_process"
  style="@style/ProgressStyle"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:indeterminate="false" />

 <TextView
  android:id="@+id/tv_progress"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_gravity="center"
  android:textColor="@color/white"/>

</FrameLayout>

style-ProgressStyle 추가

<style name="TrainProgressStyle" parent="@android:style/Widget.ProgressBar.Horizontal">
 <item name="android:progressDrawable">@drawable/my_progress</item>
</style>
drawable-my 추가progress

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

 <item android:id="@android:id/background">
  <shape>
   <corners android:radius="5dip" />
   <gradient
    android:angle="270"

    android:centerY="0.75"
    android:endColor="@color/gray_BB"
    android:startColor="@color/gray_BB" />
  </shape>
 </item>

 <item android:id="@android:id/secondaryProgress">
  <clip>
   <shape>
    <corners android:radius="5dip" />
    <gradient
     android:angle="270"
     android:centerColor="#f69200"
     android:centerY="0.75"
     android:endColor="#ff9800"
     android:startColor="#ff9800" />
   </shape>
  </clip>
 </item>

 <item android:id="@android:id/progress">
  <level-list>
   <!--      level = 10000-->
   <item
    android:maxLevel="10000"
    android:minLevel="10000">
    <clip>
     <shape>
      <corners android:radius="5dip" />
      <gradient
       android:angle="270"
       android:centerColor="#21a837"
       android:centerY="0.75"
       android:endColor="#22ac38"
       android:startColor="#22ac38" />
     </shape>
    </clip>
   </item>
   <!--       level < 10000-->
   <item
    android:minLevel="0"
    android:maxLevel="9999"
    >
    <clip>
     <shape>
      <corners android:radius="5dip" />
      <gradient
       android:angle="270"
       android:centerColor="#f69200"
       android:centerY="0.75"
       android:endColor="#ff9800"
       android:startColor="#ff9800" />
     </shape>
    </clip>
   </item>
  </level-list>
 </item>

</layer-list>

activity 의 사용 은 안 드 로 이 드 의 기본 값 과 같 습 니 다.

pb_progress.setMax();
pb_progress.setProgress();
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기