小编Mik*_*rin的帖子

ChipGroup 2路绑定适配器

我想创建 ChipGroup 2 路绑定适配器。我复制了默认的 RadioGroup 绑定适配器并进行了一些更改,但它不适用于两种方式。如果以编程方式将数据设置为 observable,ChipGroup 会从中检索更改。但是手动芯片选择不会将更改设置为可观察的。

这是我的适配器

@InverseBindingMethods(InverseBindingMethod(type = ChipGroup::class, attribute = "android:checkedButton", method = "getCheckedRadioButtonId"))
class ChipGroupBindingAdapter {
companion object {
    @JvmStatic
    @BindingAdapter("android:checkedButton")
    fun setCheckedChip(view: ChipGroup?, id: Int) {
        if (id != view?.checkedChipId) {
            view?.check(id)
        }
    }

    @JvmStatic
    @BindingAdapter(value = ["android:onCheckedChanged", "android:checkedButtonAttrChanged"], requireAll = false)
    fun setChipsListeners(view: ChipGroup?, listener: ChipGroup.OnCheckedChangeListener?,
                          attrChange: InverseBindingListener?) {
        if (attrChange == null) {
            view?.setOnCheckedChangeListener(listener)
        } else {
            view?.setOnCheckedChangeListener { group, checkedId ->
                listener?.onCheckedChanged(group, checkedId)
                attrChange.onChange()
                }
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

布局文件:

<android.support.design.chip.ChipGroup …
Run Code Online (Sandbox Code Playgroud)

android kotlin android-chips android-databinding

6
推荐指数
1
解决办法
3935
查看次数

将数据从 settings.gradle 传递到 build.gradle

我的项目需要读取settings.gradle中的json文件,然后将其传递给build.gradle文件。我尝试使用 gradle 全局变量“project”来完成此操作,但它在 settings.gradle 中不可用。另外,settings.gradle 中有“rootProject”变量,但它是只读的。

groovy android gradle

5
推荐指数
1
解决办法
1342
查看次数

奥利奥 - 自动填充框架背景突出显示颜色

是否可以更改EditText自动填充高亮颜色?默认情况下,它具有黄色背景,可能与应用程序设计不兼容.

android android-autofill-manager

5
推荐指数
1
解决办法
830
查看次数