У меня есть табличное представление со значениями, которые могут быть одинаковыми.Выделите выбранный tableViewCell для соответствия с UITextfield.text
При выборе ячейки значение поля будет заполнено выбранной ячейкой.
Я хочу выделить только выбранную строку, а не выделять все значения, которые совпадают с текстовым полем.
Мой подход в настоящее время:
где data
массив возможных значений
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
reuseIdentifier:@"identifierCell"];
}
NSString *value = ([self.data objectAtIndex:indexPath.row]);
NSString *selectedValue = textField.text;
if ([value floatValue] == [selectedValue floatValue]) {
cell.backgroundColor = [UIColor colorWithRed:220.0/255.0 green:220.0/255.0 blue:220.0/255.0 alpha:1.0];
cell.textLabel.textColor = [UIColor whiteColor];
}
else {
cell.backgroundColor = [UIColor clearColor];
cell.textLabel.textColor = [UIColor blackColor];
}
Примечание стороны: у меня есть несколько из этих ниспадающего полей, которые могут изменить текст TextField в зависимости от того, какая строка была выбран. (То есть, если строка 1 была выбрана в другом выпадающем списке, то 1.391
будет заполняться в тексте TextField.
Не знаю, как важно, что будет.
Как я могу проверить только строку, которая была выбрана и заселить текстовое поле на изображении ниже
Обновление: Благодаря @ k06a с помощью indexPath является шагом вперед, однако сейчас проблема возникает там, где, когда, если выбрана строка А, indexPath для B не должен изменение. Я думал о настройке 2 различных переменных indexPath и didSelectRowAt
установить только те, для методов, я звоню, чтобы изменить другие соответствующие значения
Вы можете добиться выбора нескольких ячеек, используя свойство 'UITableView' 'MultipleSelection'. – k06a