У меня проблема с данными прохода между контроллером. В требовании я использовал панель вкладок, есть корень, чтобы «искать людей» и «просмотр профиля». когда я нажимаю профиль профиля, данные взяты из моих данных NSUserDefaults
, но если я нажму на ячейку людей из поиска людей, в представлении профиля будут отображаться данные из ячейки людей. Я смущен, как справиться с этим делом. Возможно ли идентифицировать идентификатор segue, который отображается в профиле. пожалуйста, помогите, предпочитают Свифт кодДанные опций UIViewController от segue или NSUserdefault
UPDATE:
это мой код на "поиск людей посмотреть":
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if segue.identifier == "ShowAlumniAngkatan" {
if let destination = segue.destinationViewController as? DetailProfile{
let indexPath = ListAlumniTable.indexPathForSelectedRow
let data = SearchResult[indexPath!.row]
}
}
}
и ниже "Просмотр профиля" Код:
class ProfileDetailsViewController: UIViewController {
@IBOutlet weak var BackgroundImage: UIImageView!
@IBOutlet weak var ProfileTable: UITableView!
@IBOutlet weak var ProfilePictureImage: UIImageView!
var Profiles:DetailProfile!
var contacts:[Contact] = [Contact]()
var work:[Work] = [Work]()
var advise:String!
var SeeMoreEnbable:Bool!
override func viewDidLoad() {
super.viewDidLoad()
InitializationView()
SeeMoreEnbable = false
getData()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
self.view.endEditing(true)
}
// MARK - Init View
func InitializationView(){
blurImage()
circleImage()
}
func getData(){
let defaults = NSUserDefaults.standardUserDefaults().objectForKey("UserDetail") as! [NSData]
self.advise = NSKeyedUnarchiver.unarchiveObjectWithData(defaults[3] as NSData) as! String
let temp1 = NSKeyedUnarchiver.unarchiveObjectWithData(defaults[2] as NSData) as! [NSArray]
for data in temp1{
let jabatan = NSKeyedUnarchiver.unarchiveObjectWithData(data[0] as! NSData) as! String
let perusahaan = NSKeyedUnarchiver.unarchiveObjectWithData(data[1] as! NSData) as! String
let tahunkerja = NSKeyedUnarchiver.unarchiveObjectWithData(data[2] as! NSData) as! String
self.work.append(Work(Jabatan: jabatan, Perusahaan: perusahaan, TahunKerja: tahunkerja))
print(work[0].Jabatan)
print(work.count)
}
let temp2 = NSKeyedUnarchiver.unarchiveObjectWithData(defaults[1] as NSData) as! [NSArray]
for data in temp2{
let Type = NSKeyedUnarchiver.unarchiveObjectWithData(data[0] as! NSData) as! String
let Detail = NSKeyedUnarchiver.unarchiveObjectWithData(data[1] as! NSData) as! String
self.contacts.append(Contact(ContactType: Type, ContactDetail: Detail))
}
}
}
Я внедрил prepareForSegue
по поиску люди, которые должны отправлять данные из выбранной строки. Но у меня нет идеи о выборе данных из segue или от NSUserDefaults
.
Пожалуйста, вставьте код для читателей лучше понять – SRI
U просто необходимо создать экземпляр из профиляVC и передать данные как свойство для него до настоящего времени с помощью segue – Tj3n