将回调函数附加到RenderEditable的onCaretChanged

问题描述 投票:0回答:1

遍历完

RenderObject
TextField
树后,我就有了对底层
RenderEditable
的引用。
RenderEditable
有一个名为
onCaretChanged
的属性,每次光标/插入符移动时都会触发附加的回调函数。

如果我从头开始构造一个

RenderEditable
,我会理解如何在构造函数中附加我的回调函数,但现在我只有在 Build 函数中创建它之后才能引用它。事后如何将回调函数附加到该对象?

谢谢!

flutter dart callback textfield
1个回答
0
投票

看起来最近的 Flutter 更新 (v3.13.0)

onCaretChanged
已被删除。相反,解决此问题的方法是使用
TextEditingController
(提供文本和插入符更改)将 void 回调附加到
addListener
,并利用
RenderEditable
函数
getLocalRectForCaret

© www.soinside.com 2019 - 2024. All rights reserved.