gpt4 book ai didi

ios - 属性必须是可读写的,而其主要属性必须是只读的

转载 作者:行者123 更新时间:2023-11-28 17:58:02 25 4
gpt4 key购买 nike

我在 Storyboard中添加了一个 UITextView,在这种情况下,我为其创建了一个属性并连接到 UIView 的 subview (称为 FieldView)中。属性是这样的

@property (strong, nonatomic) UITextView * instructions;

FieldView 是 viewController 的一个属性

@property (strong, nonatomic) IBOutlet FieldView *fieldView;

当我想在 viewController 中使用代码隐藏 UITextView *指令时,我在 .h 文件中声明了该属性,这样我最终可以在按下按钮时执行此操作

 self.fieldView.instructions.hidden = YES;

但是,xCode 给我一个错误

 illegal redeclaration of property in class extension FieldView, attribute must be readwrite while its primary must be readonly

当我在 .h 和 .m 文件中添加读写时

@property (weak, nonatomic, readwrite) IBOutlet UITextView *instructions;

it said `perhaps you intended this to be a readwrite redeclaration of a readonly public property

做我想做的事情的正确方法是什么?

最佳答案

要解决您的问题,您需要在 .h 文件中声明 readonly 属性,在 .m 文件中声明 readwrite 属性文件:

//FieldView.h
@interface FieldView
@property (nonatomic, readonly, strong) UITextView *instructions;
@end

// FieldView.m
@interface FieldView()
@property (nonatomic, readwrite, strong) IBOutlet UITextView *instructions;
@end

关于ios - 属性必须是可读写的,而其主要属性必须是只读的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23158056/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com