تعيين نوع ملحق UitableViewCell على بعض الخلايا ، ولكن ليس كل شيء
-
23-09-2019 - |
سؤال
لدي 8 خلايا يتم بناؤها في UITableViewController. أود أن أعرف كيف يمكنني إظهار مؤشر الكشف على الخلايا الرابعة والثامنة. الآن أنا أبنيه في
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
على الرغم من أنني أدرك تمامًا أنها ستضيف مؤشر الكشف إلى كل خلية
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
المحلول
استخدم عبارة بسيطة إذا:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
... // do whatever
UITableViewCellAccessoryType accessoryType = UITableViewCellAccessoryNone;
if (indexPath.row == 3 || indexPath.row == 7) {
accessoryType = UITableViewCellAccessoryDisclosureIndicator;
}
cell.accessoryType = accessoryType;
... // do whatever
}
نصائح أخرى
أنت تعرف indexpath ، فلماذا لا تطبق فقط مؤشر الإفصاح عند
if((indexPath.row == 3) || (indexPath.row == 7))
?
(INDEXPATH.ROW يعتمد على 0 بالطبع ... الرابع هو 3 والثامن هو 7. ويجب عليك استخدام #defines أو طريقة أخرى للحفاظ على الأرقام السحرية من هناك أيضًا.)
لا تنتمي إلى StackOverflow