首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >向视图控制器发送数据显示为零数据。

向视图控制器发送数据显示为零数据。
EN

Stack Overflow用户
提问于 2015-11-10 19:15:14
回答 2查看 41关注 0票数 0

由于某些原因,我无法获得要发送到我的AddParticipant视图的值。

以下是"ValuetoPass“之前和segue之后的数据:”LAbelText“

ValuetoPass = GXEuoAkhjP LabelText =

TableView密码:

代码语言:javascript
运行
复制
override func tableView(tableView: UITableView, didSelectRowAtIndexPath        indexPath: NSIndexPath) {
            //CODE TO BE RUN ON CELL TOUCH

    let indexPath = tableView.indexPathForSelectedRow!;
    let currentCell = tableView.cellForRowAtIndexPath(indexPath) as UITableViewCell!;

    let valueToPass = self.participantId[indexPath.row] as String

    print("ValuetoPass = ",valueToPass)


   func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
        if (segue.identifier == "editParticipant") {

            let viewController = segue.destinationViewController as!   AddViewController
            viewController.LabelText = valueToPass;        }

   }

}

AddViewController代码:

代码语言:javascript
运行
复制
@IBOutlet weak var firstnameTF: UITextField!
@IBOutlet weak var lastnameTF: UITextField!
@IBOutlet weak var gradeTF: UITextField!
@IBOutlet weak var teacherTF: UITextField!
@IBOutlet weak var emailTF: UITextField!
@IBOutlet weak var phoneTF: UITextField!
@IBOutlet weak var transportationTF: UITextField!
@IBOutlet weak var userSchoolTF: UITextField!


var LabelText = String()

@IBOutlet weak var qrCode: UIImageView!


@IBOutlet weak var userPicture: UIImageView!

override func viewDidAppear(animated: Bool) {

}


override func viewDidLoad() {
    super.viewDidLoad()


    print("LabelText = ", LabelText)
    let currentUser = PFUser.currentUser()
    currentUser!.refreshInBackgroundWithBlock { (object, error) -> Void in
     //   print("Refreshed")
        currentUser!.fetchIfNeededInBackgroundWithBlock { (result, error) -> Void in

            self.userSchoolTF.text = currentUser!.objectForKey("school") as? String
        }
    }

所以我有数据在发送之前,但它显示为零后,海格?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-11-10 20:42:00

我想你在“故事板”里创造了一首歌,对吗?将您的prepareForSegue函数从tableView函数中删除。另外,prepareForSegue应该覆盖。尝试使用下面的代码

代码语言:javascript
运行
复制
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    if( segue.identifier == "editParticipant" ){
        if let destinationVC = segue.destinationViewController as? AddViewController {
            destinationVC.LabelText = valueToPass
        }
    }
}
票数 0
EN

Stack Overflow用户

发布于 2015-11-10 19:25:46

Swift有NSString对象吗?还是字符串是一回事?

在目标c中,分配给对象指针是创建对前一个对象的引用。当您使它变弱时,它不会添加到引用计数中,因此,如果您释放原始指针,则同时释放这两个指针。强意味着它确实添加了引用计数,因此第一个重定位实际上不会释放对象。

如果String和NSString是两种不同的东西,请尝试将您的类型改为NSString,并查看是否保留它。

我在奥比克工作,而不是斯威夫特,我不确定两者之间的细微差别。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33637779

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档