UITableView的,numberOfRowsInSection

时间:2013-01-23 20:44:10

标签: iphone ios xcode

我有三个数据(日期,视图,文本字段)。我使用SQLite(FMDB)。并输出到tableview。 当你运行这段代码时,所有部分都输出相同的单元格。我想在每个日期的单元格中进行文本字段和查看。我是初学者,请告诉我。

- (void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:animated];

    titleArry = [[NSMutableArray alloc] init ]; //タイトルを格納するための可変配列
    dateArray = [[NSMutableArray alloc] init ]; // 日付格納する可変配列
    contentsArry = [[NSMutableArray alloc] init ]; //画像を格納するための可変配列


    [DataModel selectTitle:titleArry];
    [DataModel selectDateTitle:dateArray]; 
    [DataModel selectContents:contentsArry];

    NSMutableSet *mutableSet = [NSMutableSet setWithArray:dateArray]; // 日付の重複を取り除く
    array = [mutableSet allObjects];

    [table reloadData];
}

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    return array.count;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return  contentsArry.count;
}


- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    if (cell == nil)
    {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] ;
    }

    //セルに表示する内容
    cell.textLabel.text = [titleArry objectAtIndex:indexPath.row];
    cell.imageView.image = [[UIImage alloc] initWithData:[contentsArry objectAtIndex:indexPath.row]];

    return cell;
}

2 个答案:

答案 0 :(得分:2)

cellForRowAtIndexPath方法中选择数组中的正确对象:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    //get the right object (use the object that is in the array, this is just an example)
    NSObject *object = [array objectAtIndex:indexPath];
    cell.textLabel.text = object.title
}

答案 1 :(得分:0)