首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >将变量传递给扩展另一个类的Flutter小部件

将变量传递给扩展另一个类的Flutter小部件
EN

Stack Overflow用户
提问于 2019-02-28 02:29:29
回答 1查看 410关注 0票数 0

我使用的是fluter_google_places Flutter插件。我正在尝试将一个回调函数传递到小部件中,这样当点击一个位置时,就会调用该回调函数:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
class GooglePlaces extends PlacesAutocompleteWidget {
    final Function callback;

    GooglePlaces(this.callback)
        : super(
            apiKey: kGoogleApiKey,
            sessionToken: Uuid().generateV4(),
            language: "en",
            );

    @override
    _GooglePlaces createState() => _GooglePlacesState();
    }

    class _GooglePlacesState extends PlacesAutocompleteState {
    final GlobalKey<ScaffoldState> scaffoldKey = GlobalKey<ScaffoldState>();

    void startSearch() async {
        Prediction p = await PlacesAutocomplete.show(
        context: context,
        apiKey: kGoogleApiKey,
        mode: Mode.overlay,
        language: "en",
        );

        displayPrediction(p);
    }

    Future<Null> displayPrediction(Prediction p) async {
        if (p != null) {
            widget.callback(); // Call callback function
        }
    }
}

在另一个文件中创建小部件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
void myCallback() {
    // ...
}

GooglePlaces(myCallback);

但是,回调显示错误:没有为类“PlacesAutocompleteWidget”定义方法“widget.callback();

如何从小部件调用回调函数?

EN

回答 1

Stack Overflow用户

发布于 2019-02-28 03:13:10

你遇到这个错误是因为class _GooglePlacesState extends PlacesAutocompleteState而不是State<GooglePlaces>。所以widget.callback()指的是PlacesAutocompleteWidget的状态。

这里有两个解决方案:

1)便宜的出路:

将回调传递给状态,如下所示:_GooglePlaces createState() => _GooglePlacesState(callback);

并将回调添加到状态构造函数。

2) (如上所述)修改_GooglePlacesState以扩展State<GooglePlaces>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54917491

复制
相关文章
Flutter 入门指北之基础部件
原文:https://www.jianshu.com/p/8ddb16902ce6
陈宇明
2020/12/16
1.3K0
[javaSE] 变量的传值与传址
基本数据类型:byte,short,int,long,double,float,char,boolean
唯一Chat
2019/09/10
1.6K0
java定义全局变量的方法_java调用另一个类的变量
1、单独写一个final的类,在里面定义final static的全局变量,在其它程序里包含进来就可以了。
全栈程序员站长
2022/09/24
2.6K0
Flutter常见开发问题
Flutter 使用了一种全新的方法,您可以使用 widgets代替 Views 。Android 中的 View 主要是布局的一个元素,但在 Flutter 中,Widget 几乎就是一切。从按钮到布局结构的一切都是小部件。这里的优势在于可定制性。想象一下 Android 中的一个按钮。它具有文本等属性,可让您向按钮添加文本。但是 Flutter 中的按钮不是将标题作为字符串,而是另一个小部件。这意味着**在按钮内你可以有文本、图像、图标和几乎任何你可以想象的东西,**而不会打破布局限制。这也让您可以非常轻松地制作自定义小部件,而在 Android 中制作自定义视图是一件相当困难的事情。
徐建国
2021/11/30
6.8K0
Flutter常见开发问题
Flutter 使用了一种全新的方法,您可以使用 widgets代替 Views 。Android 中的 View 主要是布局的一个元素,但在 Flutter 中,Widget 几乎就是一切。从按钮到布局结构的一切都是小部件。这里的优势在于可定制性。想象一下 Android 中的一个按钮。它具有文本等属性,可让您向按钮添加文本。但是 Flutter 中的按钮不是将标题作为字符串,而是另一个小部件。这意味着**在按钮内你可以有文本、图像、图标和几乎任何你可以想象的东西,**而不会打破布局限制。这也让您可以非常轻松地制作自定义小部件,而在 Android 中制作自定义视图是一件相当困难的事情。
徐建国
2021/08/21
6.7K0
Flutter 中使用Chip 小部件【Flutter专题30】
本文是关于 Flutter 中的 Chip 小部件。我们将大致了解小部件的基本原理,然后通过代码来实现它。事不宜迟,让我们开始吧。
徐建国
2022/03/30
2.9K0
Flutter 中使用Chip 小部件【Flutter专题30】
指针变量的传值和传址
解析:int func(int* pRes)函数的形参是指针类型 int *pRes,在函数体中 new了一块内存并赋值 12,将内存地址赋值给指针 pRes。在main函数中,定义了指针pInt,调用func函数,把pInt作为参数传入func函数中。结果*pInt并不是 12。
C语言与CPP编程
2020/12/02
2K0
指针变量的传值和传址
指针变量的传值和传址
解析:int func(int* pRes)函数的形参是指针类型 int *pRes,在函数体中 new了一块内存并赋值 12,将内存地址赋值给指针 pRes。在main函数中,定义了指针pInt,调用func函数,把pInt作为参数传入func函数中。结果*pInt并不是 12。
C语言与CPP编程
2020/10/22
2.8K0
小程序url传参如何写变量
<navigator url="../../pages/newsDetail/newsDetail?id={{news.id}}"> <view class="list-item">
蓓蕾心晴
2018/08/15
9530
将多个属性传递给 Vue 组件的几种方式
所有使用基于组件的体系结构(如Vue和React)的开发人员都知道,创建可重用组件是很困难的,而且大多数情况下,最终会通过传入大量的属性,以便从外部更容易地控制和自定义组件。这并不坏,但是传递大量属性确实会变得有点麻烦和丑陋。
前端小智@大迁世界
2020/05/11
1.9K0
10 个派上用场的 Flutter 小部件
尝试学习一门新语言可能会令人恐惧和厌烦。很多时候,我们希望我们知道早先存在的某些功能。在今天的文章中,我将告诉你我希望早点知道的最方便的几个Flutter小部件。
徐建国
2022/06/24
1.3K0
flutter 中的ModalRoute 传值
从 MaterialPageRoute 的构造参数中 可以看到 RouteSettings: settings 这个参数
徐建国
2021/08/27
1.8K0
如何将多个参数传递给 React 中的 onChange?
在 React 中,一些 HTML 元素,比如 input 和 textarea,具有 onChange 事件。onChange 事件是一个非常有用、非常常见的事件,用于捕获输入框中的文本变化。有时候,我们需要将多个参数同时传递给 onChange 事件处理函数,在本文中,我们将介绍如何实现这一目标。
网络技术联盟站
2023/06/07
2.7K0
Flutter 扩展函数
Extension methods 就是我们常说的扩展函数,像 Kotlin 等语言也有 扩展函数 的特性,因此如果你了解其他语言的扩展函数,Dart 中的扩展函数与其他语言基本一致。
老孟Flutter
2021/04/22
7660
Flutter 扩展函数
Flutter Widget框架之旅 顶
Flutter小部件采用现代反应式框架构建,从React中获得灵感。 中心思想是你从小部件中构建你的UI。 小组件描述了他们的视图在给定其当前配置和状态时应该看起来像什么。 当小部件的状态发生变化时,小部件会重新构建它的描述,该描述与前面的描述不同,以确定底层渲染树从一个状态转换到下一个状态所需的最小更改。
南郭先生
2018/08/14
6.7K0
python 变量传值传引用 区分
python的变量都可以看成是内存中某个对象的引用。(变量指向该内存地址存储的值)
IT工作者
2022/07/29
1.5K0
Flutter 入门指北之滑动部件(超详细)
日常开发中,会遇到很多这种情况,许多界面不是一页就能够显示完的。那么这里提下可滑动的容器部件
陈宇明
2020/12/16
2.5K0
iframe怎么将参数传递给vue 父组件
在子页面的iframe中想将参数传递给Vue父组件,可以使用postMessage()方法将数据发送给父窗口。父组件可以通过监听message事件来接收并处理这些数据。
王小婷
2023/08/10
1.4K0
Python类三种方法,函数传参,类与实例变量(一)
print("赋值后",id(a), id(2))   # 赋值后 41322448 41322448
用户7886150
2021/01/25
5760
点击加载更多

相似问题

将变量索引传递给flutter小部件

212

将变量传递给扩展类

15

将变量传递给flutter中的另一个类

229

将变量传递给扩展另一个类的类

30

将变量传递给扩展的PHP类

23
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文