ts-universal-attributes-click.md 1.5 KB
Newer Older
Z
zengyawen 已提交
1 2
# 点击控制

L
fix doc  
luoying_ace_admin 已提交
3
设置组件是否可以响应点击事件、触摸事件等手指交互事件。
T
explain  
tianyu 已提交
4

H
geshi  
HelloCrease 已提交
5
>  **说明:**
T
second  
tianyu 已提交
6 7
>
>  从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
Z
zengyawen 已提交
8 9 10 11 12


## 属性


H
hebingxue 已提交
13 14
| **名称**      | **参数类型** | **描述**                    |
| ----------- | -------- | ------------------------ |
15
| touchable<sup>(deprecated)</sup>   | boolean  | 设置当前组件是否可以响应点击事件、触摸事件等手指交互事件。<br>默认值:true <br />**说明:**<br />从 API version 9 开始废弃,建议使用[hitTestBehavior](ts-universal-attributes-hit-test-behavior.md)替代。|
Z
zengyawen 已提交
16 17 18 19


## 示例

H
geshi  
HelloCrease 已提交
20 21
```ts
// xxx.ets
Z
zengyawen 已提交
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
@Entry
@Component
struct TouchAbleExample {
  @State text1: string = ''
  @State text2: string = ''

  build() {
    Stack() {
      Rect()
        .fill(Color.Gray).width(150).height(150)
        .onClick(() => {
          console.info(this.text1 = 'Rect Clicked')
        })
        .overlay(this.text1, { align: Alignment.Bottom, offset: { x: 0, y: 20 } })
      Ellipse()
        .fill(Color.Pink).width(150).height(80)
        .touchable(false) // 点击Ellipse区域,不会打印 “Ellipse Clicked”
        .onClick(() => {
          console.info(this.text2 = 'Ellipse Clicked')
        })
        .overlay(this.text2, { align: Alignment.Bottom, offset: { x: 0, y: 20 } })
    }.margin(100)
  }
}
```

![zh-cn_image_0000001189624550](figures/zh-cn_image_0000001189624550.gif)