2010-11-30 2 views
0

Привет
Я хотел бы передать NSInteger контроллеру tableView, а затем использовать его для установки значка.
В этом случае NSInteger, который я хотел бы передать, - это количество строк в таблицеView, возвращаемое с помощью Core Data (numberOfRows).Переход NSInteger в контроллер tableView

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { 
    NSInteger numberOfRows = 0; 

    if ([[fetchedResultsController sections] count] > 0) { 
     id NSFetchedResultsSectionInfo sectionInfo = [[fetchedResultsController sections] objectAtIndex:section]; 
     numberOfRows = [sectionInfo numberOfObjects]; 
    } 

    return numberOfRows; 
}

Как я могу объявить другой NSInteger, а затем передать его в контроллер Tableview?

Спасибо,
Мэтью

+0

Не уверен, правильно ли я понял ваш вопрос, но не мог бы вы просто использовать код выше? – Rog 2010-11-30 21:52:08

+0

Извините за задержку ... Этот код выше, что я использую в своем основном контроллере, управляя основными данными. Я хотел бы передать номер numberOfRows другому контроллеру tableView, чтобы установить метод ... Я пытался с NSUserDefaults и работал, но число не обновляется каждый раз, когда число строк в табличном представлении изменяется ... Можете ли вы мне помочь? ? – matteodv 2010-12-01 13:31:29

ответ

1

Это звучит, как вы, возможно, потребуется два неправдоподобные результаты контроллеров во втором контроллере представления таблицы. Первый FRC будет управлять самой таблицей, а второй будет вычислять существующее количество строк в данных первой таблицы.

Вам нужно будет назначить второй контроллер табличного представления в качестве делегата для обоих FRC, а затем в методах делегатов проверить, какой контроллер произвел изменение и предпримет соответствующие действия.