textLayout在快速输入清除时报错解决方法
var tf:TextFlow;
var len:int = tf.numChildren;
for (var i:int = 0; i < len; i += 1)
{
tf.removeChildAt(0);
}
tf.flowComposer.composeToPosition();
tf.flowComposer.updateAllControllers();
TypeError: Error #1009: 无法访问空对象引用的属性或方法。
at flashx.textLayout.edit::ParaEdit$/insertText() flashx\textLayout\edit\ParaEdit.as:54]
at flashx.textLayout.operations::InsertTextOperation/doInternal() flashx\textLayout\operations\InsertTextOperation.as:196]
at flashx.textLayout.operations::InsertTextOperation/doOperation() flashx\textLayout\operations\InsertTextOperation.as:223]
at flashx.textLayout.edit::EditManager/doInternal() flashx\textLayout\edit\EditManager.as:723]
at flashx.textLayout.edit::EditManager/doOperation() flashx\textLayout\edit\EditManager.as:603]
at flashx.textLayout.edit::EditManager/flushPendingOperations() flashx\textLayout\edit\EditManager.as:873]
at flashx.textLayout.compose::StandardFlowComposer/updateToController() flashx\textLayout\compose\StandardFlowComposer.as:554]
at flashx.textLayout.compose::StandardFlowComposer/updateAllControllers() flashx\textLayout\compose\StandardFlowComposer.as:517]
tf.interactionManager.selectRange(tf.textLength, tf.textLength);
TypeError: Error #1009: 无法访问空对象引用的属性或方法。
at flashx.textLayout.edit::ParaEdit$/insertText() flashx\textLayout\edit\ParaEdit.as:54]
at flashx.textLayout.operations::InsertTextOperation/doInternal() flashx\textLayout\operations\InsertTextOperation.as:196]
at flashx.textLayout.operations::InsertTextOperation/doOperation() flashx\textLayout\operations\InsertTextOperation.as:223]
at flashx.textLayout.edit::EditManager/doInternal() flashx\textLayout\edit\EditManager.as:723]
at flashx.textLayout.edit::EditManager/doOperation() flashx\textLayout\edit\EditManager.as:603]
at flashx.textLayout.edit::EditManager/flushPendingOperations() flashx\textLayout\edit\EditManager.as:873]
at flashx.textLayout.compose::StandardFlowComposer/internalCompose() flashx\textLayout\compose\StandardFlowComposer.as:711]
at flashx.textLayout.compose::StandardFlowComposer/composeToPosition() flashx\textLayout\compose\StandardFlowComposer.as:837]
报错在ParaEdit.as,sibling为null
var sibling:FlowElement = textFlow.findLeaf(absoluteStart);
var siblingIndex:int;
var paragraph:ParagraphElement = sibling.getParagraph();
问题貌似是因为EditManager.as里insertText方法中的Event.ENTER_FRAME,这个下一帧处理好像会导致快速输入删除时候的不同步
if (captureLevel == 0 && origOperationState == null && controller && controller.container && allowDelayedOperations)
{
enterFrameListener = controller.container;
enterFrameListener.addEventListener(Event.ENTER_FRAME, enterFrameHandler, false, 1.0, true);
}
else
flushPendingOperations();
我的解决方法是同步处理 不让他下一帧处理 设置 EditManager(tf.interactionManager).allowDelayedOperations = false;
问题解决 具体为什么 还不是很清楚,先这么用着吧,如果有大神知道,希望可以交流
textLayout在快速输入清除时报错解决方法的更多相关文章
- mysql truncate带有被引用外键的表时报错解决方法
清空具有外键约束的表时报ERROR 1701(42000)的解决 mysql> truncate table t_users;ERROR 1701 (42000): Cannot trunc ...
- rebuild online时意外中断 再次重建时报错解决方法
rebuild online时意外中断 再次重建时报错 SQL> alter index PARTY.IDX_CM_INDIV_CUSTOMER_4 rebuild online; alter ...
- 安装redis 执行make命令时报错解决方法
一.未安装GCC 解决方法:执行yum install gcc-c++命令安装GCC,完成后再次执行make命令 yum install gcc-c++ Linux无法连接网络 http://www. ...
- XML节点名称中有小数点处理(deal with dot)导致使用xpath时报错解决方法
<?xml version="1.0"?> <ModifyFiles> <_Layout.cshtml>123456</_Layout.c ...
- python运用中文注释时报错解决方法
写了一段简单的代码,不知 为什么总是报错,后来上网查了一下才知道原因,当用中文进行注释时需要添加如下代码:# coding=utf-8 (注意:该段代码必须放在最前面才能有用,并且 ...
- react创建项目后运行npm run eject命令将配置文件暴露出来时报错解决方法
最近在用create-react-app创建项目,因要配置各种组件,比如babel,antd等, 需要运行npm run eject命令把项目的配置文件暴露出来,但是还是一如既然碰到报错,因为是在本地 ...
- 解决loadrunner在脚本回放时长时间等待及在vugen中create controller scenario时报错的方法!超管用!!
解决loadrunner在脚本回放时长时间等待及在vugen中create controller scenario时报错的方法 经过咨询,有两种方法.经过实践,下面的方法1有效,方法2无效(我下载安装 ...
- asp.net MVC webservice 报次错解决方法
asp.net MVC webservice 报次错解决方法: 解决方法: 在 RouteConfig.cs public static void RegisterRoutes(RouteCol ...
- redhat linux enterprise 5 输入ifconfig无效的解决方法
redhat linux enterprise 5 输入ifconfig无效的解决方法 在安装完成linux后,进入终端,输入命令行ifconfig,会提示bash: ifconfig: comm ...
随机推荐
- Java foreach操作(遍历)数组
语法: 我们分别使用 for 和 foreach 语句来遍历数组 运行结果: 练习: import java.util.Arrays; public class HelloWorld { public ...
- .Net Core-TagHelpers-Environment
当我们新建一个.net core项目时,发现页面中有个奇怪的TagHelper元素,如下: <environment names="Development"> ...
- 教你50招提升ASP.NET性能(十二):在生产环境,仔细考虑你需要记录哪些日志
(18)When in production, carefully consider what you need to log 招数18: 在生产环境,仔细考虑你需要记录哪些日志 Many peopl ...
- 怎样通过iPhone Safari 来安装测试版ipa
http://www.cocoachina.com/bbs/read.php?tid=94101# <?xml version="1.0" encoding="UT ...
- 更改OS序列号(slmgr)
slmgr /ipk 489j-abc-def-hij-mnn slmgr /skms 8.8.8.8:1688 slmgr /ato
- 教你如何选择Android游戏引擎
我们进行Android游戏开发时选择游戏引擎是必须的,但是该如何选择呢?哪个Android游戏引擎更加适合自己呢?本文就提供了三个游戏引擎的对比说明,阐述了它们各自的特点,为大家选择引擎提供了参照. ...
- ios开发——实用技术OC-Swift篇&触摸与手势识别
iOS开发学习之触摸事件和手势识别 iOS的输入事件 触摸事件 手势识别 手机摇晃 一.iOS的输入事件 触摸事件(滑动.点击) 运动事件(摇一摇.手机倾斜.行走),不需要人为参与的 远程控制 ...
- JQuery合并表格单元格
转:http://www.cnblogs.com/xuguoming/p/3412124.html JQuery合并表格单元格 一.需求 如果存在一个表格,想把其中某一列内容相同的部分合并单元格, ...
- error “base class has incomplete type”
error "base class has incomplete type" 如果base.h是你的基类,那么在子类derive中,写成如下形式: class base; clas ...
- sql时间段算法
需求:领导要求写时间段算法,格式如下 :-: :-: :-: :-: :-: :-: :-: :-: :-: :-: :-: :-: :-: :-: :-: :-: 一小时制 :-: :-: :-: ...