iPhone Obj-C错误:在Xcode中分配只读变量'prop.149'

Ell*_*iot 4 iphone xcode objective-c variable-assignment

我正在使用Objective-C编写iPhone应用程序.

这是Xcode给我的错误:

error: assignment of read-only variable 'prop.149'
Run Code Online (Sandbox Code Playgroud)

代码:

// Create CATransition object
CATransition *transition = [CATransition animation];
// Animate over 3/4 of a second
transition.duration = 0.75;
// using the ease in/out timing function
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
// Set transition type
transition.type = kCATransitionPush;
// Next line gives error: assignment of read-only variable 'prop.149'
transition.subtype = (flipsideView.hidden == YES ? kCATransitionFromRight : kCATransitionFromLeft);
Run Code Online (Sandbox Code Playgroud)

错误意味着什么,我该如何解决?

cde*_*osa 7

不确定原因,但编译器无法推断出三元运算符的结果的估计类型.简单地添加一个显式的演员似乎工作:

transition.subtype = (NSString *)(flipsideView.hidden == YES ? kCATransitionFromRight : kCATransitionFromLeft);
Run Code Online (Sandbox Code Playgroud)

我将此文件作为编译器错误提交.