Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 添加到图层后水平翻转CCSprite_Objective C_Ios_Animation_Cocos2d Iphone_Ccsprite - Fatal编程技术网

Objective c 添加到图层后水平翻转CCSprite

Objective c 添加到图层后水平翻转CCSprite,objective-c,ios,animation,cocos2d-iphone,ccsprite,Objective C,Ios,Animation,Cocos2d Iphone,Ccsprite,我正在为一个应用程序创建一条游动到屏幕上任意位置的鱼。在鱼开始向下一个位置游动之前,它会旋转到起点和目标点之间的角度 我想弄清楚的是:如果(target.x

我正在为一个应用程序创建一条游动到屏幕上任意位置的鱼。在鱼开始向下一个位置游动之前,它会旋转到起点和目标点之间的角度

我想弄清楚的是:
如果(target.x
,我需要水平翻转精灵

问题是,在创建精灵并将子对象添加到图层后,我无法使用
[sprite setFlipX]
设置精灵的
flipX
属性


将精灵添加到图层后,setFlipX是否锁定?我怎样才能避开这件事?是我唯一的动画解决方案吗?

尝试通过将scaleX设置为-1来翻转它:

sprite.scaleX = -1;

此外,您还可以在将节点添加为子节点后设置flipX布尔值。如果不能,则必须执行其他操作。

要翻转并保留以前的缩放,请使用:

sprite.scaleX *= -1.f;

完成此操作后,不应再使用属性
sprite.scale
,因为它包含
scaleX==scaleY
的断言

我不认为FlipX被锁定了。在精灵添加到图层之后,它不会翻转纹理,只是在之前。你确定吗?通常Cocos2d使这些东西成为只读的。这不会保留以前做过的任何缩放。