首页 > 解决方案 > 如何在颤动中向 CircleAvatar Widget 内部的图像添加 Onclick 事件?

问题描述

我在 circleAvatar 内有一个圆形图像,单击我想打开一个警报对话框。我的问题是如何在 CircleAvatar 中添加点击事件?

这是我的代码:

        Column(children: <Widget>[
        SizedBox(height: 32.0),
        CircleAvatar(
          radius: 55.0,
          backgroundImage: ExactAssetImage('assets/cat.jpg'),
        ),
        Container(
          height: 20.0,
        ),
        Text('01:29:30'),
        Text(
          'Avik Kumar Mandal',
          style: TextStyle(fontSize: 20),
        ),

预期:在圆形头像内的图像上的 onclick 事件 Ps 它是单击时应显示对话框的个人资料图片。

标签: flutterdart

解决方案


你可以用手势检测器包裹你的圆形头像

Column(children: <Widget>[
        SizedBox(height: 32.0),
        GestureDetector(
                onTap: () {
                 //do what you want here
                },
                child:  CircleAvatar(
                       radius: 55.0,
                        backgroundImage: ExactAssetImage('assets/cat.jpg'),
                ), 
           ),

        Container(
          height: 20.0,
        ),
        Text('01:29:30'),
        Text(
          'Avik Kumar Mandal',
          style: TextStyle(fontSize: 20),
        ),

或者

InkWell(
  onTap: () => print("image clicked"),
  child: AnyWidget()
),

现在概括我的答案。

如果你想设置OnClickListener一些 onTap默认没有实现的小部件,那么你应该用GestureDetector或包装小部件InkWeel


推荐阅读