android中的垂直进度条

win*_*ker 7 android progress-bar

我想在执行特定操作时在android中创建一个垂直进度条.进度应从第1个图标开始,在最终图标结束时继续稳步前进.我似乎无法找到一种方法来做到这一点.

如果有任何身体可以帮助一只脚进门.我将非常感激.

Dev*_*red 14

要告诉您尝试在这两个图像之间尝试的转换有点难.所以你想从黑白图像开始,但它是否通过交叉渐变从B/W转换为彩色,或者你是否想慢慢地从底部向上应用B/W片段的彩色图像?

如果后者是您的选择,那么您的实际图像将包含两个可绘制的内部<layer-list>.一个静态,另一个表示ClipDrawable将基于其级别值显示彩色图像的一部分.例如,创建一个XML文件:

RES /抽拉/ progress_background.xml

<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
  <item>
    <bitmap android:src="@drawable/ic_launcher_bw"/>
  </item>
  <item>
    <clip
        android:clipOrientation="vertical"
        android:gravity="bottom"
        android:drawable="@drawable/ic_launcher"/>
  </item>
</layer-list>
Run Code Online (Sandbox Code Playgroud)

然后将其设置为Drawable类似于ImageView显示进度的内容,并通过调用更改值setLevel(),即

//This is any view subclass that you have chosen to do this
ImageView progress;

progress.setImageResource(R.drawable.progress_background);

//Adjust the progress by adjusting the drawable's level
progress.setImageLevel(500);
// -- OR --
progress.getDrawable().setLevel(500);
Run Code Online (Sandbox Code Playgroud)

默认情况下,可绘制级别设置为0到10,000,表示完全剪切到完全显示.

HTH