objective-c - iOS:AutoresizingMask 使用数组?

标签 objective-c ios uiview autoresizingmask

是否可以为 UIView 的 autoresizingMask 属性提供一个数组?我想这样做的原因是我有一些条件可以确定我想将哪些 autoresizingMask 属性添加到我的 View 中。

所以,不只是使用:

self.view.autoresizingMask = UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleWidth;

我想做这样的事情:

if (addMargin) {
   [items addObject:UIViewAutoresizingFlexibleRightMargin];
}
if (addWidth) {
   [items addObject:UIViewAutoresizingFlexibleWidth];
}

// Add to property
self.view.autoresizingMask = items;

所以我基本上是想有条件的设置这个属性的items。

最佳答案

有点掩码。只需按位或将其与您想要的那个。

if(addMargin)
    self.view.autoresizingMask |= UIViewAutoresizingFlexibleRightMargin;
if(addWidth)
    self.view.autoresizingMask |= UIViewAutoresizingFlexibleWidth;

要重置掩码,您可以将其设置为 0,或者如果您想删除特定属性,您可以取反并按位与掩码一起取反:

if(removeMargin)
    self.view.autoresizingMask &= ~UIViewAutoresizingFlexibleRightMargin;

关于objective-c - iOS:AutoresizingMask 使用数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7111466/

相关文章:

iphone - 在 iOS 中动态创建 View

ios - 如何快速改变颜色的一小部分?

ios - 如何从 foursquare 获取用户的特定 friend 的签到?

ios - 自定义键盘高度并在 ios 中的自定义键盘上添加自定义 View

ios - 无法构建 Xcode 项目

objective-c - 如何使用 MKNetworkKit 的示例项目

ios - 自动布局 - 按百分比定位

ios - UIView动画完成回调?

ios - 该算法如何计算 rgb 颜色?

objective-c - 'handle an event' 是什么意思?