flutter 忽略點選事件

2022-05-08 21:39:11 字數 1331 閱讀 2638

absorbpointer開啟absorbing:本身可以接收點選事件,但不會把事件傳遞給子元件。

ignorepointer開啟ignoring:本身和子元件都不能接收點選事件。

import '

package:flutter/material.dart';

import

'package:flutter/cupertino.dart';

title:

'啦啦啦啦',

theme: themedata(primaryswatch: colors.red, primarycolor: colors.green),

home: pointerignorepage(),)

);class

pointerignorepage extends statefulwidget

class pointerignorepagestate extends state),

),gesturedetector(

ontap: () => print('

外層tap1'),

child: ignorepointer(

ignoring: _ifignore,

child: flatbutton(child: text('點我

'), onpressed: () => print('

點選了button1

'),),

),),

gesturedetector(

ontap: () => print('

外層tap2'),

child: absorbpointer(

absorbing: _ifignore,

child: flatbutton(child: text('點我

'), onpressed: () => print('

點選了button2

'),),

),),

],),

),);

}}

關閉_ifignore,二者本身都能接收點選事件,child優先接收點選事件,所以分別輸出button1/button2。

開啟_ifignore,只有absorbpointer才能接收點選事件,但其內部button無法接收點選事件,所以能輸出tap2。而ignorepointer則完全無法接收點選事件,所以tap1無法輸出。

Flutter忽略Https WSS證書驗證

dio dio dio dio.options.baseurl urlconfig.base url dio.options.connecttimeout 5000 dio.options.receivetimeout 3000 忽略https校驗 由於專案需求需要,在使用忽略https證書驗證的過...

Flutter 事件傳遞

fluter 事件傳遞 android中可以使用eventbus來進行元件之間的事件傳遞。flutter typedef void eventcallback arg class eventbus emap eventname new list emap eventname add f 移除訂閱者 ...

UIImageview 點選事件

uiimageview imageview uiimageview alloc initwithframe cgrectmake 100,100,200,200 imageview.image uiimage imagenamed filter laozhaopian a.png imageview...