Intereting Posts
Есть ли встроенный способ добавления распознавателя жестов (в частности, панорамирование) только к правым или левым краям представления? Будет ли самообладание внутри блока? Как назначить UIImageView PlaceHolderImage Отображение значения barchart Coreplot без выбора Отчеты о сбоях от TestFlight, не обозначенные в Xcode 7 Приложение iPhone, использующее RNCryptor, требует какой-либо регистрации шифрования? Использование NSRunLoop для блокировки продолжения работы на Simulator, но сбой на устройстве Добавление нижней границы строки в TextView – iOS Почему подкласс Swift UIView с методом удобства init () запускает бесконечный цикл после обновления до Swift 3.0? Срыв текущего контекста JS в реагировании Возможно ли перенаправить системный API в Objective-C? обновление анимации среднего полета в основной анимации Обновление номера веб-страницы при обновлении шрифта Гравитационное чтение Vs Пользовательское ускорение чтения акселерометра iphone? Как обновить toValue / fromValue CABasicAnimation для более плавного изменения?

Как получить данные, отображаемые в ячейке TableView, и отобразить их в текстовом поле?

У меня есть tableView в контроллере представления, где я выводю данные из вызова API, теперь, если пользователь выбирает ячейку tableview (скажем, строку 2 в TableView), я хочу получить эти данные (данные в строке 2 TableView) и отобразить это в текстовом поле на одном экране. Каков наилучший способ сделать это?

Вы можете попробовать это: когда пользователь выбирает конкретный UITableViewCell, тогда содержимое этой ячейки будет отображаться в UITextField.

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { let cell= tableView1.cellForRow(at: indexPath) if let txtVal = cell?.textLabel?.text { textField.text = txtVal } } 

Самый простой способ – показать, как UIAlertController с textField на didSelect tableViewCell.

 func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { let alert = UIAlertController(title: "Edit Data", message: "Edit corresponding detail", preferredStyle: .alert) alert.addTextField { (textField) in textField.placeholder = "Enter name" textField.text = yourArray[indexPath.row] } alert.addAction(UIAlertAction(title: "Edit", style: .default, handler: { (action) in //Edit data on array })) alert.addAction(UIAlertAction(title: "Cancel", style: .cancel, handler: nil)) self.present(alert, animated: true) } 

У вас есть данные из webservice, которые вы показываете в своем UITableview, например, arrWebServiceData . и у вас есть индекс строки, где пользователь нажал на index . arrWebServiceData способ – получить данные из arrWebServiceData по index и использовать его для отображения в тестовом поле.

например:

NSArray * arrWebServiceData; // вы храните данные от Wevserice здесь.

func tableView (_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {

  let index = indexPath.row; let dataAtIselectedIndex = yourArray[indexPath.row] ; //If data is string, dirctly display it on text field,or if its dictionary, set object of diction on your text field. }