因此,我刚刚完成了我的第一个应用程序,使用swift 1.2构建,并为ios 8制作。它上周成功地到达了应用商店,但现在是时候更新代码ios 9和swift 2.swift 2转换帮助 - 89问题
以前的应用程序工作完美,没有问题,没有崩溃,但在xcode 7中打开完全相同的项目会引发89个问题。我已经经历了xcode会自动将其转换为我的过程,但仍然存在问题。我已经达到了所有构建问题都消失的程度,但该应用程序无法运行。我甚至无法通过点击输入字段来输入用户名和密码,甚至不会注册我的触摸并让我的类型通过我的登录屏幕。
从花费大量时间制作一个功能正常的应用程序,但现在完全无法工作,这是非常令人沮丧的。
有没有人有我的工作方式,虽然这个好的建议,让我的应用程序回到它再次工作,但为ios9和swift 2?我应该让Xcode为我转换它并在那里工作吗?我应该改变自己吗?任何帮助都会很棒,因为我仍然对这一切都很陌生。就在我认为我正在研究其中的一部分时,这一切都发生了变化,并且发生了断裂。
一些示例错误我得到如果这能帮助:
- 很多问题有关不展开选项。我可以解决我认为的问题。
- 这告诉我“Downlocation from'CLLocation?'?到'CLLocation'只解开可选项;你的意思是使用'!'?“不知道在这里做什么。
let locationUpdated = locations.last as! CLLocation
-variable currentUser被写入,但从来没有读过
var currentUser = PFUser.currentUser()
永恒价值 'activeFieldPresent' 从未使用;考虑用'_'替换或删除它。用其他不可变的值获得这个错误很多。这是什么意思,我该如何解决?这是为什么我的水龙头类型不工作?
func keyboardWasShown(notification: NSNotification) { //Need to calculate keyboard exact size due to Apple suggestions self.scrollView.scrollEnabled = true let info : NSDictionary = notification.userInfo! let keyboardSize = (info[UIKeyboardFrameBeginUserInfoKey] as? NSValue)?.CGRectValue().size let contentInsets : UIEdgeInsets = UIEdgeInsetsMake(0.0, 0.0, keyboardSize!.height, 0.0) self.scrollView.contentInset = contentInsets self.scrollView.scrollIndicatorInsets = contentInsets var aRect : CGRect = self.view.frame aRect.size.height -= keyboardSize!.height if let activeFieldPresent = activeField // Heres where the error shows { if (!CGRectContainsPoint(aRect, activeField!.frame.origin)) { self.scrollView.scrollRectToVisible(activeField!.frame, animated: true) } }
}
谢谢。另一个问题是,我第一次在我的设备上构建了应用程序的新版本,并且在字段中输入文本对设备非常有用,但不是在模拟器中。所以也许这只是模拟器中的一个错误,希望不是我的代码有问题? – Bcavanaugh934
我似乎没有任何问题在我的应用程序模拟器中输入文字。一般而言,我倾向于将这些事情视为代码中的错误(并不是说从来没有SDK问题)。 –