Android L“令人愉快的”可绘制转换

2023-11-23

Google 是否允许使用图标诸如此类的过渡由开发商创建?或者是开发人员有责任创建这种“令人愉快的”过渡?我真的很想在我的应用程序中实现这些。

具体是这样的图标


您可以使用 AnimatedDrawable 和基于位图的框架创建动画图标。在L上,您可以使用AnimatedStateListDrawable创建有状态动画(例如复选框动画)。

这是一个 AnimatedDrawable 示例(实际上这是 L 预览上复选框的实现),使用可以从代码启动和停止的 15 毫秒长帧:

<animation-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:duration="15" android:drawable="@drawable/my_icon_frame_000" />
    ...additional frames...
</animation-list>

这是一个 AnimatedStateListDrawable,使用 AnimatedDrawable 转换来实现根据 View 状态自动启动和停止的复选框动画:

<animated-selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_enabled="false" android:state_checked="true">
        <bitmap android:src="@drawable/btn_check_to_on_mtrl_015" android:tint="?attr/colorControlActivated" android:alpha="?attr/disabledAlpha" />
    </item>
    <item android:state_enabled="false">
        <bitmap android:src="@drawable/btn_check_to_on_mtrl_000" android:tint="?attr/colorControlNormal" android:alpha="?attr/disabledAlpha" />
    </item>
    <item android:state_checked="true" android:id="@+id/on">
        <bitmap android:src="@drawable/btn_check_to_on_mtrl_015" android:tint="?attr/colorControlActivated" />
    </item>
    <item android:id="@+id/off">
        <bitmap android:src="@drawable/btn_check_to_on_mtrl_000" android:tint="?attr/colorControlNormal" />
    </item>
    <transition android:fromId="@+id/off" android:toId="@+id/on">
        <animation-list>
            <item android:duration="15">
                <bitmap android:src="@drawable/btn_check_to_on_mtrl_000" android:tint="?attr/colorControlNormal" />
            </item>
            ...additional frames...
        </animation-list>
    </transition>
    <transition android:fromId="@+id/on" android:toId="@+id/off">
        <animation-list>
            <item android:duration="15">
                <bitmap android:src="@drawable/btn_check_to_off_mtrl_000" android:tint="?attr/colorControlActivated" />
            </item>
            ...additional frames...
        </animation-list>
    </transition>
</animated-selector>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android L“令人愉快的”可绘制转换 的相关文章

随机推荐

  • WPF 命令和事件有什么区别?

    WPF 和 WPF 有什么区别Command and Event 一般来说 您可以对事件执行与命令几乎相同的操作 只是处理用户交互的模式不同 Commands在 WPF 中 允许您将命令处理程序的实现移至业务层 命令结合了启用状态和执行 因
  • Ember:嵌套组件事件冒泡

    我创建了一组嵌套组件 代码在这里 http emberjs jsbin com hasehija 2 edit HTML level 1 level 2 level 3
  • String.Format 一个整数以在丹麦文化中使用带有小数值的千位分隔符

    我有一根绳子totalPRice它的值是这样的1147 5我想要两件事 1 对值进行四舍五入 以便后面始终有两位数 2 在此字符串中实现千位分隔符 这样最终的输出将是这样的1 147 50我尝试过这样的事情 String Format 0
  • 使用 htaccess 将子目录重定向到子域

    我对使用 htaccess 比较陌生 除了我在网上阅读的内容之外 从未做过任何编码 我正在使用 Bluehost 并且我想将我的博客子目录重定向到子域 示例 我想将 www example com blog 重定向到 blog exampl
  • 使用 HttpContextScoped() 时 StructureMap 不会处理数据上下文

    我的目标是拥有一个数据上下文 MainDbContext ASP NET MVC 中的每个 HTTP 请求 并在请求结束时处理数据上下文 我正在使用以下 StructureMap 配置 public static class Contain
  • 连接文件与路径以获得C中的完整路径

    使用 C 我尝试将目录中的文件名与其路径连接起来 以便我可以为每个文件调用 stat 但是当我尝试在循环内使用 strcat 时 它将前一个文件名与下一个文件名连接起来 它在循环期间修改argv 1 但我已经很长时间没有使用C了 所以我很困
  • 为 PHP 数组的每一项添加前缀

    我有一个 PHP 数字数组 我想在其前面加上减号 我认为通过使用爆炸和内爆这是可能的 但我对 php 的了解不可能真正做到这一点 任何帮助 将不胜感激 本质上我想从这里开始 array 1 2 3 4 5 to this array 1 2
  • 在 MySQL 中存储时间间隔值的最佳方法?

    愚蠢的简单问题 但我一直无法找到一个优雅的解决方案 我想将时间间隔存储在 MySQL 列中 例如 1 40 1小时40分钟 0 30 30 分钟 然后能够运行查询并对它们求和 现在我将它们存储为 INT 值 1 40 但我必须手动进行加法
  • Numpy 数组每个项的均值和标准差

    我有一个二维数组 相同形状 的列表 并且希望在与输入形状相同的结果数组中获取所有项的平均值和偏差 我很难从文档中了解这是否可能 我对 axis 和 keepdims 参数的所有尝试都会产生不同形状的结果 例如 我希望有 mean x x 等
  • 使用 Hibernate (JPA) 查询 Postgresql 找不到表

    我正在使用 JPA 与 Hibernate 和 Postgresql 开发一个应用程序 使用 Netbeans 向导 我从现有数据库创建了实体类 其中一个类的摘录如下 Entity Table name ADM TYPES XmlRootE
  • 更改数据库中所有存储过程的 ANSI_NULLS 设置

    我们在 ANSI NULLS 设置和计算列方面存在一些问题 并且我们有大量的存储过程 SET ANSI NULLS OFF 我们想把它们全部改成 SET ANSI NULLS ON 有没有一种简单的方法可以做到这一点 或者我必须将所有 SP
  • 如何使用 dart_pdf 将资产图像和图标转换为 flutter 中的 PdfImage

    使用的库 dart pdf搜索后我发现同样的问题GITHUB但无法解决问题 我尝试了这个 但出现了模糊的图像 请帮忙 ByteData data await rootBundle load assets test jpg var codec
  • 改变iphone sdk中图像的颜色

    我有一个图像 我想通过编程更改该图像的颜色 我想改变这张图片的颜色 UPDATE 使用这个方法 UIImage imageNamed NSString name withColor UIColor color load the image
  • Rails flash[:notice] 总是 nil

    我不明白为什么我的 Rails 视图无法识别 flash notice 或 flash error 关于渲染的部分视图 我不断收到以下错误 具体错误是 ActionView Template Error 当你没有预料到时 你得到了一个 ni
  • 在每个文档中构建具有附加字段的反应式出版物

    我想制作一个包含几个附加字段的出版物 但我不想使用Collection aggregate当集合发生变化时 我的出版物更新就会丢失 所以我不能只使用self added在其中 我打算使用Cursor observeChanges为了实现这一
  • GMP pow 中的溢出处理

    我只是 GMP 库的间接用户 主要通过swi prolog and yap 但我对解决这个问题非常感兴趣 当使用大得离谱的值执行求幂时 主机系统或 GMP 不再能够适当地处理溢出 我已经与上述系统的开发人员交谈过 但他们没有看到解决此问题的
  • 在进程和 DLL 之间共享全局/静态变量

    我只想在进程和进程调用的 dll 之间共享静态 全局变量 exe和dll位于同一内存地址空间 我不希望该变量在其他进程之间共享 问题的阐述 假设有一个静态 全局变量x in a cpp 两个都是exefoo exe和动态链接库bar dll
  • 以编程方式更改 android:digits

    我在布局 xml 中有这个 android digits 0123456789 android inputType phone gt 我想要的是能够以编程方式更改它并且能够来回更改它 输入 Type 部分很好 manual ip setIn
  • 如果特定情况没有返回结果,则使用 count(*) 显示零

    我有一个这样的查询 它返回 city 中每个案例的行数 select case edition id when 6 then DELHI when 50 then AHMEDABAD when 4 then HYDERABAD when 2
  • Android L“令人愉快的”可绘制转换

    Google 是否允许使用图标诸如此类的过渡由开发商创建 或者是开发人员有责任创建这种 令人愉快的 过渡 我真的很想在我的应用程序中实现这些 具体是这样的图标 您可以使用 AnimatedDrawable 和基于位图的框架创建动画图标 在L