Pracuję nad wymaganiem, w którym muszę mieć TableView z dwiema kolumnami, które nie powinny być niezależne od siebie. Więc nie szukam dwóch TableViews, które przewijają się niezależnie zamiast pojedynczego TableView z dwiema kolumnami, które można przewijać razem. W każdej z kolumn ponownie muszę uzupełnić dane i zrzut ekranu.

Do tej pory zmodyfikowałem kod w cellForRowAtIndexPath:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{

    static NSString *CellIdentifier = @"Cell";
    static NSString *secondCellIdentifier = @"Cell2";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
    }

    UITableViewCell *cell2 = [tableView dequeueReusableCellWithIdentifier:secondCellIdentifier];

    if (cell2 == nil) {
        cell2 = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:secondCellIdentifier] autorelease];
    }

    // Configure the cell...

    cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;

    cell.textLabel.text = [tableList objectAtIndex:indexPath.row];

    cell2.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;

    cell2.textLabel.text = [tableList2 objectAtIndex:indexPath.row];

    UITableViewCell *twoColumnRowView = [[UITableViewCell alloc]init];

    [twoColumnRowView addSubview:cell];
    [twoColumnRowView addSubview:cell2];

    return twoColumnRowView;
}

Ale niestety nie otrzymuję tabeli z dwoma kolumnami, zamiast tego otrzymuję dziwne dane wyjściowe, które można zobaczyć na zrzucie ekranu.

Image

Czy ktoś może mnie poprowadzić we właściwym kierunku.

PS Przejrzałem poprzednie posty na tym samym forum i w Internecie dotyczące tego samego tematu, ale nic z odpowiednim wyjaśnieniem lub przykładem. Dobrze byłoby uzyskać pomocne informacje.

Dzięki

0
125369 22 luty 2012, 15:51

2 odpowiedzi

Najlepsza odpowiedź

Będziesz musiał utworzyć niestandardową UITableViewCell, która ma układ, którego szukasz. Następnie możesz utworzyć jego instancję w metodzie tableView:cellForRowAtIndexPath:

1
Mudit Bajpai 22 luty 2012, 18:12

Stwórz swoją niestandardową klasę UITableViewCell. Wewnątrz komórki umieść dwa UIButton i ustaw je zgodnie ze swoim układem.

0
Mudit Bajpai 22 luty 2012, 16:14