在钢琴应用程序中,我正在分配黑键的坐标.这是导致错误的代码行.
'blackKey'和'whiteKey'都是customViews
blackKey.center.x = (whiteKey.frame.origin.x + whiteKey.frame.size.width);
Run Code Online (Sandbox Code Playgroud) 我正在创建一个UIImageView并将它添加到我的视图循环中,我将初始帧设置为0,0,1,47并且循环的每个段落我改变图像视图的中心以将它们分开.
我总是使用0作为origin.y
问题是原点引用位于图像视图的中心,假设我们在界面构建器中,这相当于下面的图像.
如何更改代码中的参考点?

我试图以编程方式设置框架的原点.
方法一:
button.frame.origin.y = 100;
Run Code Online (Sandbox Code Playgroud)
方法2:
CGRect frame = button.frame;
frame.origin.y = 100;
Run Code Online (Sandbox Code Playgroud)
我尝试了方法1,但它无法正常工作(显示错误,表示Expression不可分配).方法2正在运行.为什么会这样?
需要指导我正在做的事情.
我有这个:
typedef struct objTag{
float x;
float y;
BOOL isUP;
} object;
Run Code Online (Sandbox Code Playgroud)
如何使对象成为这样的属性
@property (nonatomic, assign) object myObj;
Run Code Online (Sandbox Code Playgroud)
然后...
@synthesize myObj = _myObj;
Run Code Online (Sandbox Code Playgroud)
这个编译很好,但后来在代码中尝试类似的东西
self.myObj.isUP = YES;
Run Code Online (Sandbox Code Playgroud)
我收到消息"表达式不可分配"