android - Android BindingAdapter 将默认行为设置为所有 TextView
问题描述
我有很多布局,我想将一些默认属性设置为我所有TextViews
. 例如
@BindingAdapter("sensitive")
fun TextView.sensitive(value: Boolean) {
if (value)
visibility = View.GONE //or ViewUtils.BlackMeOut(this)
else
visibility = View.VISIBLE
}
有没有办法做到这一点而不添加:
app:sensitive="@{true}"
90% TextViews
?是的,我可以创建自己的TextView
,但事实并非如此。以全局样式拥有它会很好
<style name="SensitiveTextViewStyle" parent="android:Widget.TextView">
<item name="sensitive">true</item>
</style>
样式似乎不支持BindingAdapter
。
解决方案
推荐阅读
- typescript - 如何告诉 TypeScript 编译器推断地图类型?
- mongodb - Mongo C驱动中有findOne操作吗?
- c++ - 是否有必要用导出注释导出实体的模板特化?
- javascript - 如何在具有自动播放功能的浏览器中保持全屏模式,就像 youtube 播放列表一样?
- r - 为什么我部署的闪亮仪表板的某些选项卡显示错误,但它们在本地计算机上运行顺畅?
- flutter - 颤振-我不知道这两种情况之间的区别
- google-cloud-pubsub - 如何根据事件 Google PubSub 发送消息?
- javascript - p5.js:如何将 keyPressed 限制为仅发送 1 个输出?
- javascript - 无法从 Vue 获取 URL
- c++ - 为什么`std::uninitialized_copy/move etc.`不是constexpr?