如果用户尝试单击禁用的单选按钮,则显示提示文本

Posted

技术标签:

【中文标题】如果用户尝试单击禁用的单选按钮,则显示提示文本【英文标题】:Show hint text if user is trying to click on disabled Radio button 【发布时间】:2020-04-09 06:16:30 【问题描述】:

我想实现这个功能:

当用户点击禁用的单选按钮时,它应该显示一个提示文本告诉用户它不允许改变选择。

我查过Tooltip,据说:

将按钮包装在 Tooltip 小部件中,以便在长按小部件时(或当用户采取其他适当的操作时)显示标签。

关于Tooltip,我只知道当用户长按小部件显示工具提示时如何实现。 我不知道如何实现当用户采取上面提到的其他一些适当的操作时

就我而言,触发工具提示的适当操作是单击禁用的单选按钮。

我尝试过的其他事情:

Flutter Tooltip on all widgets Flutter how to update hint text with current value in TextField

还是想不通。

更多信息:

不一定是 Tooltip,请提供任何合适的解决方案。 我是 Flutter/Dart 的新手,希望我已经清楚地解释了这个问题。

谢谢。

【问题讨论】:

【参考方案1】:

当用户按以下方式点击 RadioButton 时,您可以显示Tooltip

以下是供您参考的代码:Run on DartPad

import 'package:flutter/material.dart';

main() => runApp(MaterialApp(home: MyApp()));

class MyApp extends StatelessWidget 

  GlobalKey _toolTipKey = GlobalKey();

  @override
  Widget build(BuildContext context) 
    return Scaffold(
      body: Center(
        child: GestureDetector(
            onTap: () 
              final dynamic tooltip = _toolTipKey.currentState;
              tooltip.ensureTooltipVisible();
            ,
            child: Tooltip(
              key: _toolTipKey,
              message: 'button is disabled',
              child: Radio(
                groupValue: null,
                onChanged: null,
                value: null,
              ),
            ),
          ),
      ),
    );
  

【讨论】:

酷!让我看看,它正在使用 GestureDetector && GlobalKey && Ontap。稍后我会尝试更新。 如果这对您有用,请不要忘记接受并投票给答案... :) 绝对!好消息是它可以在我的代码中使用!谢谢卡尔佩什!

以上是关于如果用户尝试单击禁用的单选按钮,则显示提示文本的主要内容,如果未能解决你的问题,请参考以下文章

Razor 显示/隐藏基于使用 javascript 的单选按钮

使用 jquery 检查禁用的单选按钮

从不同的单选按钮组获取单选按钮标签并附加到分区

在选中的单选按钮上启用/禁用 RadDatePicker

在选中单选按钮之前禁用输入字段(HTML)

带有javascript的单选按钮