ios - 坚持一个结构

标签 ios objective-c ios5 struct

如何在创建方法之外挂起以下结构?我一直在尝试将它分配给实例变量或属性,但运气不佳。

@property(nonatomic) CTParagraphStyleSetting defaultParagraphSettings;

- (void)someMethod {
    CTParagraphStyleSetting settings[] = {
        { kCTParagraphStyleSpecifierAlignment, sizeof(CTTextAlignment), &alignment },
        { kCTParagraphStyleSpecifierLineBreakMode, sizeof(CTLineBreakMode), &lineBreakMode },
    };
    self.defaultParagraphSettings = settings;
}


self.defaultParagraphSettings = settings; 生成以下错误:

Assigning to 'CTParagraphStyleSetting' (aka 'struct CTParagraphStyleSetting') from incompatible type 'CTParagraphStyleSetting [4]'


我这样做的方式正确吗?

最佳答案

错误消息告诉您变量settingsCTParagraphStyleSettingarray 类型,属性defaultParagraphSettings 属于 CTParagraphStyleSetting 类型。所以你有两个问题,(1) 类型不兼容,(2) (Objective-)C 不支持数组赋值。

我无法告诉您如何修复它,因为这取决于您尝试做什么。但是例如声明:

self.defaultParagraphSettings = settings[0];

应该将数组的第一个元素分配给属性。

关于ios - 坚持一个结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18115842/

相关文章:

iphone - 如何在使用 AVAudioPlayer 的应用程序的多任务栏中启用音频控件?

ios - 在 Swift/Objective-C 中重用 tableviewcell 时,属性标签不会消失

objective-c - 在 Objective-C 中实现自定义 Ctrl+a

iPhone:如何实现信号量?

android - Wowza Media Server IOS 设备的实时视频流延迟?

ios 在两个 uiscrollview 之间移动触摸事件

iphone - 在 iPhone 上获取距离矩阵 API (google) 的 XML

objective-c - 解析维基百科表格

iphone - iOS Facebook SDK-获取 friend 的电子邮件

iphone - 切换到 map 应用后返回同一个应用