クライアントのリスト (クライアントのロゴ + 名前など) を表示するテーブル ビューがあり、同時に各クライアントに関する特定の情報 (概要など) にリンクする 4 つのボタンを作成しました。
これらのボタンをクリックすると、すべてが適切に機能し、対応する適切なviewui
情報が表示されます。
問題は、すべてをアルファベット順にソートするときです。ボタンが以前の順序にリンクしていることを除いて、すべてが適切に並べ替えられます (会社名など) indexPath.row
。そのため、アルファ リストのクライアント 1 をクリックすると、正しい最初のクライアントの情報が表示されます。文字 B の下にある最初のクライアントをクリックします...リスト A に最初のクライアントの情報が表示されます...そのため、ボタンのインデックスパスはまったくソートされません....
これが私のコードです:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSIndexPath *offsetPath = [self modelRowIndexForIndexPath:indexPath];
//NSLog(@"Requested: %@ -- Off: %@",indexPath,offsetPath);
RMCustomClientCell *cell = [tableView dequeueReusableCellWithIdentifier:@"ClientCell"];
RMClients *client;
if(!self.alphaMode){
client = [self.clients objectAtIndex:indexPath.row];
} else {
NSString *key = [self.alphaKeys objectAtIndex:offsetPath.section];
NSArray *specificClients = [self.sortedClients objectForKey:key];
client = [specificClients objectAtIndex:offsetPath.row];
}
cell.extraDetailsButton.tag = indexPath.row;
cell.overviewDetailsButton.tag = indexPath.row;
cell.listDetailsButton.tag = indexPath.row;
cell.eventsDetailsButton.tag = indexPath.row;
cell.nameLabel.text = client.name;
return cell;
}
これを修正するにはどうすればよいですかcell.extraDetailsButton.tag = indexPath.row;
(indexPath.row) は、別のものに置き換える必要があります。