Ios 按钮方向问题
我以编程方式创建一个按钮,并将其框架指向我在故事板上创建的另一个按钮,当方向发生变化时,它不会像预期的那样停留在中间Ios 按钮方向问题,ios,objective-c,uibutton,orientation,Ios,Objective C,Uibutton,Orientation,我以编程方式创建一个按钮,并将其框架指向我在故事板上创建的另一个按钮,当方向发生变化时,它不会像预期的那样停留在中间 我也创建了 uIIVIEVIEW ,但是当方向改变时,它停留在中间。 @property (nonatomic, weak) IBOutlet UIImageView *logoImage; @property (nonatomic, weak) IBOutlet UIButton *loginButton; @property (strong, nonatomic) UIBut
我也创建了<代码> uIIVIEVIEW ,但是当方向改变
时,它停留在中间。@property (nonatomic, weak) IBOutlet UIImageView *logoImage;
@property (nonatomic, weak) IBOutlet UIButton *loginButton;
@property (strong, nonatomic) UIButton* popUpButton;
UIImage *logOutButtonImage=[UIImage imageNamed:@"Button - Logout.png"];
_popUpButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_popUpButton setBackgroundImage:logOutButtonImage forState:UIControlStateNormal];
_popUpButton.frame=_loginButton.frame;
[_popUpButton addTarget:self action:@selector(didPressLink:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:_popUpButton];
故事板上的图像和按钮,它们位于中间
图像属性
按钮属性
结果:
在视图didload
上正常工作,无论方向如何:
在取向变化
时不停留在中间。为什么按钮不能停留在中间,我怎么才能做到呢? 设置
自动调整大小掩码
_popUpButton.autoresizingMask = UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin | UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin;
实际上,这会使按钮旋转并向左或向右漂移。据我所知,你的按钮一开始位于中心,旋转后会改变原点。这将有助于它保持在中心位置。因此,当方向发生变化时,它不会更新popupbutton的框架,而是相对地更新框架和方向。阅读