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.
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
2 odpowiedzi
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:
Stwórz swoją niestandardową klasę UITableViewCell. Wewnątrz komórki umieść dwa UIButton i ustaw je zgodnie ze swoim układem.
Podobne pytania
Nowe pytania
objective-c
Tego znacznika należy używać tylko w przypadku pytań dotyczących funkcji Objective-C lub zależnych od kodu w języku. Tagi [cocoa] i [cocoa-touch] powinny być używane, aby zapytać o ramy lub klasy Apple. Użyj powiązanych tagów [ios], [macos], [apple-watch] i [tvos] w przypadku problemów specyficznych dla tych platform.