iOS可变数组始终为空
这是我的难题 我试图在视图控制器上方放置一个表视图 视图加载并添加后,我用于tableview的数组始终为空,但是表始终为空 这是带有tableview和可变数组属性的视图头文件iOS可变数组始终为空,ios,objective-c,arrays,uitableview,Ios,Objective C,Arrays,Uitableview,这是我的难题 我试图在视图控制器上方放置一个表视图 视图加载并添加后,我用于tableview的数组始终为空,但是表始终为空 这是带有tableview和可变数组属性的视图头文件 @interface IngredientsView : UIView <UITableViewDataSource,UITableViewDelegate> - (id)initWithFrame:(CGRect)frame andIngredients:(NSMutableArray*)ingre
@interface IngredientsView : UIView <UITableViewDataSource,UITableViewDelegate>
- (id)initWithFrame:(CGRect)frame andIngredients:(NSMutableArray*)ingredientsArray;
- (id)initWithIngredients:(NSMutableArray*)ingredientsArray;
@property (weak, nonatomic) IBOutlet UITableView *notesTableView;
@property NSMutableArray* ingredients;
}
在init方法中,self.components数组将向NSlog返回一个计数(例如6个对象)
但是在我的委托表视图方法numberOfSectionsFor:index路径中,它总是返回0,就好像数组是nil一样
我试过了
- 改用实例数组
- 合成阵列并从我的视图控制器进行设置
- 将数组粘贴到单例上并从单例中获取数组
我通常使用表视图控制器,但仅使用表视图的经验不多。我有什么遗漏吗?您自己的设置;然后在下一行中,将self设置为一个nib,您可以加载它,覆盖self。将self设置为笔尖后,将self.Components分配移动到 哪些初始值设定项被称为?如果您是从xib文件加载的,当然可以
-(id) initWithFrame:(CGRect)frame andIngredients:
不叫
-(id)initWithFrame:
是视图的指定初始值设定项。因此,从nib文件加载视图时将调用它
在任何情况下,您的initWith…
代码应该做的第一件事是:
self = [super initWithFrame: ... ]
if (self)
{
...
}
最关键的问题是:
您正在分配self=[[NSBundle mainBundle]loadNibNamed:[NSString stringWithFormat:@“%@,[self class]]所有者:自选项:nil]objectAtIndex:0]代码>
您刚刚跳过了正在初始化的self
如果您想从XIB文件中加载<代码> DealTrsVIEW/COD>,您也可以考虑执行<代码> -(无效)AuxKeFiNeb {…}/Cuth>来设置您的属性,或者在--(自已)iNITY框架中设置属性:…code>在调用
[super initWIthFrame:rect]`啊,当然-谢谢-这就是为什么无论我做什么,它都会被擦除
self = [super initWithFrame: ... ]
if (self)
{
...
}