如何设置视图框架宽度?(为什么我不能直接设置?)

Kai*_*bin 9 iphone positioning objective-c uiview ios

我想重置一个UIView的帧大小,所以我写道:

view.frame.size.width = x;
Run Code Online (Sandbox Code Playgroud)

但它不起作用,谁能告诉我为什么?

Saa*_*aad 17

你不能直接设置宽度,这样做

CGRect frm = view.frame;
frm.size.width = x;
view.frame = frm;
Run Code Online (Sandbox Code Playgroud)


gio*_*shc 7

当你打电话时,view.frame你得到一个框架矩形属性的副本,所以设置它是frame.size.width改变副本的宽度而不是视图的框架大小