我是iOS新手。 我有一個類似的問題:在調試器中顯示「0個對象」
"self" object for UIViewcontroller has @"0 objects" in debug window in xcode
重新啓動的Xcode不解決問題。
從我的主視圖控制器中,我可以在視圖控制器中看到自對象。我有一個UITableViewController裏面的視圖控制器,爲表的delagete /數據源一個單獨的類。一旦我進入這個tableviewcontroller代碼,自我對象在調試器中顯示「0對象」。我相信我正在初始化表視圖不正確,以某種方式導致此問題,但不太確定如何。
感謝您的幫助。我的代碼如下。
@implementation ConnectTableController
@synthesize perpArray;
@synthesize nameArray;
+ (ConnectTableController *)connectTableController
{
return [[ConnectTableController alloc] init];
}
- (void)viewDidLoad {
[super viewDidLoad];
perpArray = [[NSMutableArray alloc] init];
nameArray = [[NSMutableArray alloc] init];
}
....
@interface ConnectTableController : UITableViewController <UITableViewDelegate, UITableViewDataSource> {
UITableView *tableView;
NSMutableArray* perpArray;
NSMutableArray* nameArray;
}
+ (ConnectTableController*) connectTableController;
@property (nonatomic, strong) NSMutableArray *perpArray;
@property (nonatomic, strong) NSMutableArray *nameArray;
...
// Parent view controller code
@implementation ConnectVC
- (void)viewDidLoad {
[super viewDidLoad];
// Set the controller delegate/dataSource for the Table
connectTableController = [[ConnectTableController alloc] init];
connectTable.dataSource = connectTableController;
connectTable.delegate = connectTableController;
[self addChildViewController:connectTableController];
}
...
@interface ConnectVC : UIViewController{
IBOutlet UIButton *CONNECT;
ConnectTableController *connectTableController;
IBOutlet UITableView *connectTable;
}
難道是數據源 – user210504
檢查,如果你給數據源的數量。如果是這樣,請通過NSLog進行調試。即使有時它給出0個對象,但它在NSLog中提供了正確的信息 – Chintan
我認爲在父視圖控制器的這一行上設置數據源可以做到這一點: connectTable.dataSource = connectTableController; 這樣還不夠嗎?那麼,只需要NSLog(tableView.datasource)進一步調試? – zgb