我正在为视图添加UIButton
,当我旋转设备时,屏幕上会再添加一个按钮。我只需要一个按钮,我不希望第二个按钮在旋转时添加。
我尝试为该按钮设置自动调整遮罩,但它没有按预期工作。我使用了以下代码:
button = [UIButton buttonWithType:UIButtonTypeCustom];
button.backgroundColor = [UIColor lightGrayColor];
button.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin |
UIViewAutoresizingFlexibleRightMargin |
UIViewAutoresizingFlexibleTopMargin |
UIViewAutoresizingFlexibleBottomMargin;
[button setFrame:bFrame];
[self addSubview:button];
答案 0 :(得分:0)
我只是假设您提供的代码是在更改方向时执行的。
您要做的是将按钮存储在实例变量中,并在更改方向时检查该变量是否为零。
if (!button) {
button = [UIButton buttonWithType:UIButtonTypeCustom];
button.backgroundColor = [UIColor lightGrayColor];
button.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin |
UIViewAutoresizingFlexibleRightMargin |
UIViewAutoresizingFlexibleTopMargin |
UIViewAutoresizingFlexibleBottomMargin;
[button setFrame:bFrame];
[self addSubview:button];
}
这假定变量button
是UIView
或UIViewController
的实例变量,而不是仅在方法范围内的变量。
关于您的autoresizingMask
,请说明您希望发生的事情以及实际发生的事情,以便我们为您提供帮助。