привычные методы вызова UITableview для хранения значения в ячейке в iphone - PullRequest
0 голосов
/ 12 июля 2011

Я использую пользовательскую концепцию UITableview для отображения данных в ячейке таблицы. Мое привычное имя uiTableview - это файл CustomeUITableView.h, CustomeUITableView.m и CustomeUITableView.xib. Этот файл состоит из следующего кода.

//header file code

@interface CustomTableCellview : UITableViewCell {

UILabel *titleOfPost;
IBOutlet  UILabel *userProfileName;
}

@property(nonatomic,retain) IBOutlet UILabel *titleOfPost;


- (void)setTileOfPost:(NSString *)_text;
- (void)setUserName:(NSString *)_text;
@end

// some important part of class file code

- (void)setTileOfPost:(NSString *)_text{
titleOfPost.text = _text;
 }

- (void)setUserName:(NSString *)_text{

userProfileName.text = _text;

 }

// TableView code where cell is creating and function of cutome UITableview is calling

    static NSString *MyIdentifier = @"MyIdentifier";
MyIdentifier = @"tblCellView";

   CustomTableCellview *cell = (CustomTableCellview *)[tableView  dequeueReusableCellWithIdentifier:MyIdentifier];
  if(cell == nil) {
    [[NSBundle mainBundle] loadNibNamed:@"CustomTableCellview" owner:self options:nil];
    cell = tblCell; //IBOutlet CustomTableCellview *tblCell;

 }

[cell setTileOfPost:[tableList objectAtIndex:indexPath.row]];

[cell setUserName:[profileUserName objectAtIndex:indexPath.row]];

 return cell;    

Это хорошо, и мой вывод показывает данные в порядке. Но здесь есть небольшая ошибка. Я вызываю функции "setTileOfPost" и "setUserName" в каждой загрузке CELL. Это делает большой вызов функции. Я хочу получить весь заголовок текста в одном вызове функции. Я не хочу использовать функцию вызова снова и снова. Я сохранил значение в "tableList", и это внешний массив, определенный в файле main.m, поэтому я могу использовать этот массив в любом месте приложения.

Как получить все значения в одном вызове функции? Заранее спасибо

1 Ответ

0 голосов
/ 12 июля 2011

tableList и profileUserName имеют тип NSArray или NSMutableArray, я полагаю. Что вы можете сделать, так это в своем методе viewdidLoad создать копию этих массивов в качестве источника данных. А в cellforrowatindexpath вы можете напрямую получить доступ к этим копиям.

[cell.title setText:[tableListCopy objectAtIndex:indexPath.row]];

Я надеюсь, вы поняли это здесь. У вас есть локальная копия источника данных таблицы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...