作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我想在按钮被选中时添加一个 less 类。
我有一个轨道按钮列表:
@Inject
@DataField("trackButtonList")
@ListContainer("div")
private ListComponent<Integer, StationTrackButton> trackButtonList;
当我选择其中一个时,我尝试将类激活到相应的按钮:
trackButtonList.setSelector(b -> b.setSelected(true));
trackButtonList.setDeselector(b -> b.setSelected(false));
public void setSelected(boolean isSelected) {
if (isSelected) {
trackButton.classList.add("active");
} else {
trackButton.classList.remove("active");
}
}
选择一个按钮时,我无法设置“Activity ”类。但是,如果我在 devTools 上的 google chrome 上添加类“active”,按钮将获得相应的背景颜色。
我在 html 中有这部分的代码:
<div data-field="trackButtonList" class="nav nav-pills nav-fill">
<button data-field="trackButton" class="nav-item nav-link"></button>
</div>
在 less 文件中:
&.nav-item.nav-link {
&.active {
background-color: @light-green-color;
}}
trackButton 是这样注入(inject)的:
@Inject
@Named("button")
@DataField("trackButton")
private HTMLElement trackButton;
最佳答案
我认为LESS代码中有一个小错误,应该是:
.nav-item.nav-link {
&.active {
background-color: @light-green-color;
}
}
尽管如此,我认为问题不在于此。我认为这是您将组件标记为选中的方式。如果您没有使用正确的组件实例作为参数,有时 ListComponent.selectComponent()
无法按预期工作。
尝试改用 ListComponent.selectModel()
。
关于java - 如何在 Java 的按钮列表中设置一个 less 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56441338/
我是一名优秀的程序员,十分优秀!