我需要使用两个可绘制的图像创建一个简单的进度条.一个是当然的背景.另一个我需要根据浮动百分比来扩展.是否可以仅使用Java代码?我尝试了setBounds()方法没有用... :(
谢谢
只使用XML代码就可以完美而轻松地完成这项工作.
首先,在您的活动布局中,在您声明进度条样式的位置指定XML,在本例中为@ drawable/custom_progressbar:
<ProgressBar
style="?android:attr/progressBarStyleHorizontal"
android:progressDrawable="@drawable/custom_progressbar"
android:layout_width="300dp"
android:layout_height="wrap_content"
android:background="@drawable/progress_bar_background" >
</ProgressBar>
Run Code Online (Sandbox Code Playgroud)
然后,在@ drawable/custom_progressbar中声明将使用根据进度剪辑的位图表示进度.id很重要,因为Android的ProgressBar小部件使用它.
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@android:id/progress">
<clip>
<bitmap android:src="@drawable/progress_bar_foreground" />
</clip>
</item>
</layer-list>
Run Code Online (Sandbox Code Playgroud)
然后,在布局中声明进度棒,指定进度条的背景.
应该在进度条图层列表中使用id android:id ="@ android:id/background在理论中指定背景,但在这种情况下它对我不起作用.我认为Android设计者认为这可以用作一个可伸缩的9patch或一个平铺的位图.我想和你一样,我只是通过在布局视图中声明背景来获得它.
希望有所帮助.
| 归档时间: |
|
| 查看次数: |
5253 次 |
| 最近记录: |