我想着色如20%的布局背景以及一段时间后,其色彩的40%等等。 我如何在android中实现这一点?Android - 如何给布局的某个百分比上色?
3
A
回答
6
您可以从ClipDrawable
开始。这将基于可绘制的级别截取另一个可绘制的—例如ShapeDrawable
—。
然后在你的计时器回调:
int level; // from 0 to 10000 = 100%
view.getBackground.setLevel(level);
编辑:下面是一个例子:
定义形状绘制在
/res/drawable
。叫它bkgd_shape.xml
。<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <solid android:color="@color/background"/> </shape>
定义可在
/res/drawable
中绘制的背景。让我们把它叫做bkgd_level.xml
:<?xml version="1.0" encoding="utf-8"?> <clip xmlns:android="http://schemas.android.com/apk/res/android" android:drawable="@drawable/bkgd_shape" android:clipOrientation="horizontal" android:gravity="left|clip_horizontal|fill_vertical"/>
您可能能够把颜色直接用于绘制源,但我还没有尝试过。
将它设置为布局背景:
android:background="@drawable/bkgd_level"
呼叫
setLevel
上绘制:int level; // from 0 to 10000 = 100% view.getBackground.setLevel(level);
1
你可以把任何类型的视图的背景和更新它与和设置你想它动态的颜色。
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
int width = dm.widthPixels;
int height = dm.heightPixels;
扩大宽度然后,只是按百分比。
int percentChange = .2; //Update this accordingly, put in its own function possibly
int backgroundWidth = width * percentChange;
例如,使用在后台的ImageView:
ImageView background = (ImageView) findViewById(R.id.expandingBackground);
background.requestLayout();
background.getLayoutParams().width = backgroundWidth;
希望帮助,祝你好运。
相关问题
- 1. Android百分比布局
- 2. Android Nougat的相对布局百分比
- 3. 基于百分比的android布局
- 4. 的Android百分比宽度布局
- 5. Android简单的百分比布局?
- 6. Android百分比布局高度
- 7. Android填充百分比布局
- 8. 如何使用百分比的android布局?
- 9. 基于百分比布局的差距
- 10. iOS自动布局百分比
- 11. 根据百分比创建布局
- 12. 布局百分比与填充
- 13. 屏幕上RecyclerView内布局的百分比
- 14. 如何以百分比的方式获得布局的高度?
- 15. Android的渲染问题,百分比布局
- 16. 线性布局(百分比定义 - layout_weight)的Android
- 17. 如何制作基于百分比的水平布局?
- 18. 将静态布局转换为%百分比布局使用css
- 19. Contraint布局vs百分比相对布局
- 20. 如何根据Highchart中的百分比给出颜色 - JavaScript
- 21. 百分比基于iPad的CSS布局中断在iPad上
- 22. Android - 3列行布局 - 如何让它占用屏幕的百分比?
- 23. 如何计算三个百分比之间的比例颜色?
- 24. Android百分比布局宽度和高度应该指定
- 25. 流体布局 - 如何获得初始百分比值
- 26. 如何在Android中的ObjectAnimator中给出百分比值
- 27. 试图优化算法中的某些颜色在画布中的百分比
- 28. Android百分比ProgressBar
- 29. 以基于百分比的响应布局来分隔DIV
- 30. 如何计算列中某个值的出现百分比?
请问您能解释一下关于使用ClipDrawable的更多信息... – Obtice
使用示例XML更新了答案。 –
非常感谢,这工作得很好... – Obtice