[英]Multiple array elements selected from one viewcontroller to another viewController
I have segue from my first vc to second and second segue from second to first from table entry. 我从第一个vc到第二个都进行了选择,从表项的第二个到第二个进行了第二次选择。
Need one by one select value of tableview
and copy it from segue destination
to textbox in first viewcontroller
, It loads viewdidload
always when comes from vc2 to vc2, I need to use viewdidappear
. 需要一个逐一的
tableview
选择值并将其从segue destination
复制到第一个viewcontroller
文本框,当从viewdidappear
到viewdidappear
总是加载viewdidload
,我需要使用viewdidappear
。
class membersViewController: UIViewController,UITableViewDataSource,UITableViewDelegate
{
var array = ["Gurpreet","Pulkit","Raman","Rajan","Jonish"]
var searchActive : Bool = false
var filtered:[String] = []
var selectedMem = ""
override func viewDidLoad() {
super.viewDidLoad()
}
@IBOutlet var tableView: UITableView!
func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return array.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "cell")! as UITableViewCell
cell.textLabel?.text = array[indexPath.row]
return cell
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "segueMember"
{
let vc = segue.destination as! testViewController
vc.selectedMem = selectedMem
}
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
selectedMem = array[indexPath.row]
performSegue(withIdentifier: "segueMember", sender: nil)
// dismiss(animated: true, completion: nil)
}
class testViewController: UIViewController {
var selectedMem = ""
override func viewDidLoad() {
super.viewDidLoad()
textMem?.text = selectedMem
}
override func viewDidAppear(_ animated: Bool) {
textMem?.text = (textMem.text)! + selectedMem
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
@IBOutlet var textMem: UITextField!
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: Ind. exPath)
{
selectedMem = array[indexPath.row]
performSegue(withIdentifier: "segueMember", sender: self)
// dismiss(animated: true, completion: nil)
}
func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?){{
if (segue.identifier == "segueMember")
{
let viewController = segue.destinationViewController as YourViewController
// make property in YourViewController class
viewController.yourValue = selectedMem
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.