1

我想要 90 度线性渐变的 android 按钮。当按钮为state_pressed时,渐变翻转为 -90 度,使其看起来更具交互性

在我当前的实现中,这需要一个布局 XML 文件、两个形状可绘制文件和一个状态列表可绘制文件。

向后工作,状态列表可绘制包含两个形状可绘制文件,布局 xml 包含一个按钮,该按钮将其 src 或背景设置为状态列表可绘制。

这里的问题是配置颜色,而不是在形状可绘制文件中为我的渐变手动输入两种颜色,我想要一个按钮对象,它采用一种颜色,并为另一端找到该颜色的不同阴影渐变,设置线性渐变的度数,并为这些渐变创建多个状态。

这样就不会有任何 XML 文件混乱,我只能从我的 colors.xml 文件中传递一种颜色

无论如何,这将是对 android 项目的有效补充,该对象还将增加 android 应用程序 UI/UX 的美感

4

1 回答 1

3

这是一个需要回答的大问题。我可以向您指出我们做过类似事情的链接。https://hg.mozilla.org/mozilla-central/file/ba6c02fc1fe6/mobile/android/base/ShapedButton.java#l107展示了一种动态创建的方法StateListDrawable

这是一种在单个可绘制文件上应用过滤器的方法:https ://sriramramani.wordpress.com/2012/07/22/oh-my-textviews/

于 2013-08-21T16:32:30.937 回答