Ладно, я здесь совершенно тупой.
Это работает в CouponListViewController.m:
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
self.couponList = [CouponDatabase database].couponList;
self.title = @"Coupon List";
}
И это работает в CouponDetailViewController.m:
- (void)viewWillAppear:(BOOL)animated {
CouponDetails *details = [[CouponDatabase database] couponDetails:_uniqueId];
if (details != nil) {
[_merchantNameLabel setText:details.merchantName];
[_longDealLine1Label setText:details.longDealLine1];
//....blah...blah//
}
}
Но когда я изменяю CouponDatabase.h из этого (который работает с вышеупомянутым):
@class CouponDetails;
@interface CouponDatabase : NSObject {
sqlite3 *_database;
}
+ (CouponDatabase *)database;
- (NSArray *)couponList;
- (CouponDetails *)couponDetails:(int) uniqueId;
... к этому (что работает, если я вручную устанавливаю значение selectedCategory внутри метода):
@class CouponList;
@class CouponDetails;
@interface CouponDatabase : NSObject {
sqlite3 *_database;
}
+ (CouponDatabase *)database;
- (CouponList *)couponList:(int) selectedCategory;
- (CouponDetails *)couponDetails:(int) uniqueId;
и затем измените CouponListViewController.m на это:
1 - (void)viewWillAppear:(BOOL)animated {
2 [super viewWillAppear:animated];
3 self.couponList = [[CouponDatabase database] couponList:_selectedCategory];
4 self.title = @"Coupon List";
5 }
Я получаю эту ошибку в строке 3 выше:
warning: incompatible Objective-C types 'struct CouponList *',
expected 'struct NSArray *' when passing argument 1 of 'setCouponList:'
from distinct Objective-C type
Вопрос: Как правильно форматировать строку «self.couponlist», чтобы я мог передать целое число в CouponDatabase для использования в методе couponList?
РЕДАКТИРОВАТЬ: я знаю, что couponDetails теперь является классом, а не массивом - я просто не знаю, как отформатировать строку для инициализации данных таблицы.
Надеюсь, это имеет смысл - любая помощь по этому вопросу будет принята с благодарностью.
Заранее спасибо!
Добавление CouponListViewController.h:
#import <UIKit/UIKit.h>
@class CouponDetailsViewController;
@interface CouponListViewController : UITableViewController {
NSArray *_couponList;
CouponDetailsViewController *_couponDetails;
int _selectedCategory;
}
@property (nonatomic, retain) NSArray *couponList;
@property (nonatomic, retain) CouponDetailsViewController *couponDetails;
@property(nonatomic, assign) int selectedCategory;
@end