【问题标题】:Titanium - Android meterial different color buttonsTitanium - Android 材质不同颜色的按钮
【发布时间】:2016-06-27 17:37:14
【问题描述】:

我正在尝试为我的 Android 应用提供一个材质视图。我已按照此处的指南进行操作:

http://docs.appcelerator.com/platform/latest/#!/guide/Android_Themes

http://www.appcelerator.com/blog/2015/07/understanding-the-android-material-theme/

如果我放置一个按钮,它是“计量化的”。它具有默认颜色,并在单击时具有动画效果。

但我想要的是在屏幕上有几个按钮 - 每个按钮都有不同的颜色。但我仍然喜欢将它们用作材质按钮 - 但一旦我给它们一个 backgroundColor,它们就只是一个普通的按钮 - 没有任何关于它们的物质化。

我可以更改材质视图项目的颜色,还是我必须只使用主题中定义的颜色?

编辑

澄清一下 - 我想在屏幕上有几个按钮 - 每个都有自己的颜色 - 作为材料设计按钮(包括动画和材料外观)。

编辑 2

我在 Appcelerator jira (https://jira.appcelerator.org/browse/AC-560) 上发现了一个类似的问题,其中 appcelerator 声明这不是错误,而是本机行为。

所以我正在修改我的问题 - 我可以像在本机上一样为每个控件设置自定义 android 样式吗?

【问题讨论】:

  • 看看这个question with answers。我相信这就是您要找的。​​span>
  • @Aqul 谢谢。那是有用的信息。我可以将它应用于 Titanium 吗?
  • 是的,在您的问题第一个链接中,您拥有所有信息,platform/android/res/values/your_theme.xml
  • 我也用了一个带有点击事件的View控制器,而不是Button元素,你可以随意设置样式
  • @RicardoPereira 成功!我能够实现github.com/traex/RippleEffect。你能告诉我你是如何在你的组件上投下阴影的吗?

标签: appcelerator appcelerator-titanium


【解决方案1】:

作为对您上一条评论的回应,这是我为按钮解决问题的方法,我还有其他按钮功能,如非活动、启用、按下、setTitle 等...

button.xml

<Alloy>
    <View id="button">
        <Label id="title"/>
        <ImageView id="icon"/>
    </View>
</Alloy>

button.js(例如)

var args = arguments[0] || {},
    data = {};

$.title.text = args.title;

$.icon.image = '/images/button/'+args.image+'.png';

data.select = function(status) {

    if($) {

        if($.button) $.button.backgroundColor = status ? '#fff' : Alloy.CFG.myHoverColor;

        if($.icon) $.icon.image = '/images/button/'+args.image+'_hover.png';
    }
};

data.click = function() {

    data.select(true);

    setTimeout(function() {

        if($ && $.button && data && data.select) data.select(false);
    },1000);
};

$.button.addEventListener('click',data.click);

$.button.cleanup = function() {

    $.destroy();

    $.off();

    $.button.addEventListener('click',data.click);  

    $ = data = args = null;
};

cmets中使用的链接:

Alloy Themes

RippleEffect

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-03
    • 2019-08-27
    • 2018-02-05
    • 1970-01-01
    • 1970-01-01
    • 2019-04-26
    • 2014-12-28
    相关资源
    最近更新 更多