问题标签 [layerdrawable]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Android: set color programmatically to ProgressBar
I would like to set color programmatically to the progress bar primaryProgress, secondaryProgress as the color will be changed according to the background color of the screen.
Code:
Edit:
** the color code here are for testing only. Afterwards the colorcode will be referenced to other part for updates accordingly
Question:
It underlines in red for primanyColor.setColor
and reports that The method setColor(int, null) is undefined for the type Drawable
.
How could I modify the above codes to make it works? Thanks!
android - 在 GestureImageView 中使用 LayerDrawable 滑动
我正在使用 GestureImageView 显示带有所选主题的自定义图层的地图。根据我在 GestureImageView 中加载 LayerDrawable 的主题。
我使用它的方式是,位图正在扼杀我的记忆,并会抛出 OutOfMemoryException。我想使用 Glide 来加载这些位图,但我不知道如何将 LayerDrawable 与 Glide 一起使用。
编辑:我没有 Glide 的原始代码:
在 Glide 中,我只使用了一些基本代码,例如:
但是你必须使用某种模型,因为 Glide 不理解 LayerDrawable。
android - 以编程方式更改图层列表可绘制项的底部属性
我正在创建一个LayerDrawable
创建底部笔划但我不知道如何给出层的底部边距(Drawablw)。
我想以编程方式设置像上面一样的底部边距。
到目前为止,我已经这样做了:
有人知道吗?
android - 在 ImageView 中逐层显示图像不起作用
在我的应用程序中,我有一组绘图。我必须逐层显示它。为此,我正在使用 LayerDrawble。我是这样使用的
但它只显示最上面的图像。这意味着它不会逐层显示整个 3 个图像。
我如何逐层显示它
更新 我需要这样的视图,第一个和最后一个图像在图层中对齐。
我已经在答案中发布了一个杰森。图像逐层显示。但它的底部有一些奇怪的外观.. 见屏幕截图。以及如何使它正确
android - LayerDrawable 移除图层
如何从中删除图层LayerDrawable
?addLayer
可以用来添加图层,但是我没有看到可以用来删除图层的功能。
https://developer.android.com/reference/android/graphics/drawable/LayerDrawable.html
android - ProgressDrawable setColorFilter 在 Nexus 5 中不起作用
我有一个RatingBar
:
我正在使用滤色器使评级栏的星星变成粉红色,如下所示:
这适用于所有手机,除了 Nexus 5(Android 6.0 版),其中 5 颗星都是粉红色的,但默认填充。即使我点击星星,它们也不会改变颜色,所有 5 颗星星都保持填充状态。
但是,当我这样做时ratingBar.getRating()
,它会返回我的用户触摸评分栏的评分,这意味着它正在工作,只是滤色器出现故障。
如果我删除滤色器,RatingBar
则默认颜色可以正常工作。
似乎无法在任何地方找到解决方案。提前致谢。
android - How to inflate badge counter in MenuItem using custom LayerDrawable
I was following this article. Unfortunatelly, badge isn't drawn. Of course I changed invalidateOptionsMenu
method to supportInvalidateOptionsMenu
method.
I was checking the log, step by step and found out that draw
method in custom Drawable
named BadgeDrawable
is never called. Why is that?
I'm trying to use it in AppCompatActivity using Support Design Library version 23.0.1
I saw this answer but it seems to be out of date.
Is there anyone who managed to implement badger counter for MenuItem icon inside android.support.v7.widget.Toolbar
?
If the way shown in the article is wrong then could you suggest other way to achieve the result as in example below?:
Here is a setup inside my application:
LayerDrawable XML ic_filter_notifications.xml
:
Menu that I use in the Toolbar menu_activity_main.xml
:
This is function sets the count int for new BadgeDrawable inside UsefulFunctions class - UsefulFunctions.java
:
This is the important scrap of my MainActivity where I invoke BadgeDrawable creation. I also show what's inside onCreate and in onOptionsItemSelected, may be needed - MainActivity.java
:
android - layerlist drawable 在点击时不会随 imageview 改变
我在 android 中以编程方式将图层列表设置为具有可绘制性的图像视图
我的自定义 Drawable 如下,
}
这是我创建图层列表drawable并将其设置为imageview的代码,
在单击 imageview 时,我正在尝试更改可绘制对象但失败了,因为条件运行良好但图层列表可绘制对象没有改变,
我在 imageView 的点击监听器上的代码,
android - 对于较小的屏幕,layerDrawable 不显示在 imageButton 上
所以,我的一般问题是我正在尝试基于抓取多个 400 x 600 png Drawable 的 80 x 80 区域来动态设置 imageButton 图像,将它们分层,并将 imageButton.setImageDrawable() 它们放入按钮中。这实际上有效......假设设备有一个大屏幕。对于小屏幕(阅读:电话),这会失败。诚然,我只测试了 BlueStacks 的“大屏幕”,但是小屏幕上的失败影响了我的 Nexus 5 仿真器、朋友的 Turbo 和我的新的(可能是两个月大的)Turbo 2。
一张图片,显示带有 BlueStacks 面孔的按钮,但在模拟器中没有任何电话
至于代码......以下是创建按钮的 for 循环的内部:
在“faceMaker”从资源中抓取可绘制对象的地方,使用 setBounds 抓取与您所看到的内容相对应的可绘制对象的 80 x 80 区域(完整的可绘制对象在上面分层,其他东西分层并添加,请参见左侧图像大小差异的感觉);这是 faceMaker() 的示例:
所以,我的问题是......为什么这在大屏幕上有效,但在小屏幕上却如此糟糕?一个不同的按钮(1个Drawable)也有类似的问题,它只显示了Drawable的一部分;修复了 setBounds 问题以解决该问题,但是,我需要能够仅抓住按钮的头部,因此这不适用于整体 faceMaker/按钮解决方案。
这是一个 setBounds 问题吗?如果是这样,我该如何解决它,但仍要抓住我需要的 80 x 80 区域?(nFaceStartx、nFacex 等是找到 80 x 80 区域的边界)。如果不是,那是什么原因造成的?以及如何在代码中修复它?
编辑:添加了一行 Log.e("width", Integer.toString(layerDrawable.getIntrinsicWidth()) + " " + Integer.toString(btnChoice[nN].getWidth()));
..在Bluestacks(它工作的地方)上吐出“width 80 50”,在电话模拟器上吐出“width 80 150”,它不显示。不知道为什么会发生这种情况,但它确实存在,以防万一。layout:width 和 layout:height 在 xml 中都是 50dp。