flutter 点击行为识别, 有一个HitTestBehavior属性。它有三个枚举值。他们什么区别?
enum HitTestBehavior {
/// Targets that defer to their children receive events within their bounds
/// only if one of their children is hit by the hit test.
deferToChild,
/// Opaque targets can be hit by hit tests, causing them to both receive
/// events within their bounds and prevent targets visually behind them from
/// also receiving events.
opaque,
/// Translucent targets both receive events within their bounds and permit
/// targets visually behind them to also receive events.
translucent,
}
这是有关用户界面中目标的三种不同的点击测试行为类型:
"deferToChild" 表示目标本身不会接收到点击测试事件,但是如果它的子元素被点击测试命中,子元素会接收到事件。换句话说,目标将点击测试委托给它的子元素。
"opaque" 表示目标被点击测试命中后会接收到事件,并且它也会阻止它后面的目标接收事件。
"translucent" 表示目标被点击测试命中后会接收到事件,但它也会允许后面的目标接收事件。
这些行为可以用于创建不同类型的用户界面。例如,一个 "opaque" 目标可以用于按钮,它应该阻止后面的任何按钮被点击,而 "translucent" 目标可能用于覆盖层,它应该允许用户与其后面的元素进行交互。
网友评论