问题标签 [android-shapedrawable]
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 - 将动画集应用到可绘制形状
我有以下可绘制的 red_dot.xml:
和动画pulse.xml:
如何将动画应用于XML 文件中的可绘制对象,例如 red_dot_animated?如果 red_dot.xml 是一个矢量文件,以下是可能的(但它不是,因为我们有一个形状)
android - 对于低于 23 的 API,图层列表中的可绘制形状不正确地呈现
昨天,我切换到了 Android Studio 2.1.3 版。今天,我重新打开了我的一个项目,并尝试添加一些图层列表可绘制对象以与ImageView
. 比如这个:
这是我在升级我的 Android Studio 版本之前得到的,如果我选择 23 作为“在 IDE 中渲染布局时使用的 Android 版本”,这就是我现在在预览中得到的。
但是,如果我选择 23 以下的任何版本,我只会得到正方形:
不幸的是,在模拟器 (Lollipop 22) 或设备 (Jellybean 18) 上运行应用程序时,我只得到正方形。
以防万一这有帮助:
- compileSdkVersion 23
- 构建工具版本“23.0.3”
- minSdkVersion 11
- targetSdkVersion 23
- buildType 调试没有任何内容
- 依赖项:编译'com.android.support:appcompat-v7:23.0.1'
Activity
延伸_AppCompatActivity
我认为这个问题在某种程度上与上层的, 和的top
使用left
有关。因为如果我只是在正方形顶部放置一个圆圈,则预览以及“真实事物”对于所有 API 级别都按预期工作。right
bottom
编辑我还使用相同的代码/ xml 和以下(自动创建)开始了一个全新的项目build.gradle
:
- compileSdkVersion 24
- 构建工具版本“24.0.2”
- minSdkVersion 15
- targetSdkVersion 24
- buildType 调试没有任何内容
- 依赖项:编译'com.android.support:appcompat-v7:24.2.0'
Activity
延伸_AppCompatActivity
top
这里的行为相同:如果我使用,和值 != 0 left
,则不会为 API 级别 <= 22 渲染上层 。right
bottom
所以我的问题是:如何使用 Android Studio 2.1.3 为所有 API 级别创建“带有插图”的形状可绘制对象?
android - 从源更改背景颜色/可绘制
我有许多使用形状可绘制对象的背景颜色的 XML,例如:
我的形状背景 xml 是:
现在我想添加一个功能,让用户可以选择更改背景颜色。有没有一种快速的方法可以根据某个值更改可绘制的源形状,而不是转到加载 xml的每个活动并更改它?
谢谢你。
android - 自定义视图中的 ShapeDrawable 动画 alpha 属性
我在绘制一个简单的 alpha 动画时遇到了问题。下面你有一个说明问题的测试项目。
持有 ShapeDrawable 的类
}
自定义视图
活动
}
如果我不在 animateDrawable 中调用 postnvalidate() ,那么就没有动画。看到其他示例(不完整)似乎只能通过使用动画器来为形状绘制动画,无需在视图中手动调用 postInvalidate() ...
那么,我的理解是否正确,我是否需要自己使整个视图无效?如果是这样的话,整个视图会被“重绘”还是只是脏区?
谢谢