You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何禁用Material Chip点击效果?API 28以下版本适配方法

禁用Material Chip点击效果(兼容API28以下)

你在API28+通过设置outlineSpotShadowColor为透明来禁用点击阴影的思路是对的,但API28及以下没有这个属性,你可以通过以下两种方式处理:

方案1:直接禁用交互(推荐)

如果你的Chip不需要响应点击事件,直接关闭可点击和焦点状态,这是最简洁的兼容方案,所有API版本通用:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
    chip.outlineSpotShadowColor = binding.root.context.resources.getColor(android.R.color.transparent)
} else {
    chip.isClickable = false
    chip.isFocusable = false
}

方案2:保留交互但移除视觉反馈

如果必须保留Chip的可点击能力(比如要处理点击逻辑但不想显示按压效果),可以移除默认的状态动画:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
    chip.outlineSpotShadowColor = binding.root.context.resources.getColor(android.R.color.transparent)
} else {
    chip.stateListAnimator = null
}

也可以通过XML布局提前配置,避免代码里的版本判断:

<com.google.android.material.chip.Chip
    ...
    android:clickable="false"
    android:focusable="false"
    android:stateListAnimator="@null" />

内容的提问来源于stack exchange,提问作者Nickaleush

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 15:42:43