我想要90度线性渐变的android按钮。当按钮为state_pressed
时,梯度翻转到-90度,使其看起来更具交互式
在我当前的实现中,这需要一个布局XML文件、两个形状可绘制文件和一个状态列表可绘制文件。
向后看,状态列表drawable包含两个形状drawable文件,布局xml包含一个按钮,该按钮将其src或背景设置为状态列表dravable。
这里的问题是配置颜色,而不是在形状可绘制文件中手动为渐变输入两种颜色,我希望有一个按钮对象,它采用一种颜色,并为渐变的另一端找到该颜色的不同阴影,设置线性渐变的度数,并为这些渐变创建多个状态。
这样就不会有任何XML文件混乱,而且我只能从我的colors.XML文件中传入一种颜色
无论如何,这将是一个富有成效的android项目的补充,这个对象也将增加android应用程序UI/UX 的美观性
这是一个需要回答的大问题。我可以给你指出我们做过类似事情的链接。https://hg.mozilla.org/mozilla-central/file/ba6c02fc1fe6/mobile/android/base/ShapedButton.java#l107显示了一种动态创建CCD_ 2的方法。
以下是在单个可绘制文件上应用筛选器的方法:https://sriramramani.wordpress.com/2012/07/22/oh-my-textviews/