【发布时间】:2016-03-02 12:35:42
【问题描述】:
我有以下情况:
我在 viewDidLoad: 中创建了一个 rightBarButtonItem
self.navigationItem.rightBarButtonItem = UIBarButtonItem.init(title: "New", style: .Plain, target: self, action: "newProject")
我的问题是,如何使用 segue“显示(例如推送)”以编程方式点击此按钮到另一个 Viewcontroller。
我的开头是这样的:
func newProject() {
}
但我不知道更多,因为我是 Swift 的初学者。
任何帮助将不胜感激!
更新:
所以,这是出现错误的整个区域:
class NewProject: UIViewController, UITextFieldDelegate, UITextViewDelegate, CustomPickerDelegate {
@IBOutlet weak var txtProjectName: UITextField!
@IBOutlet weak var tvDescription: UITextView!
@IBOutlet weak var txtStartDate: UITextField!
@IBOutlet weak var txtEndDate: UITextField!
var hud: MBProgressHUD?
var customPicker: CustomPickerView?
var dictProject: NSDictionary!
var projectID: String!
override func viewDidLoad() {
super.viewDidLoad()
self.navigationItem.title = "Create new Project"
self.hud = MBProgressHUD(view: self.view)
self.view.addSubview(self.hud!)
self.projectID = ("\(self.dictProject!["id"]!)")
self.populateFields()
}
func populateFields() {
if nil != self.dictProject!["name"] {
self.txtProjectName.text = self.dictProject!["name"] as? String
}
}
并且错误出现在这一行:
self.projectID = ("\(self.dictProject!["id"]!)")
这行在这里:
if nil != self.dictProject!["name"] {
【问题讨论】:
-
您是否通过故事板从右栏按钮转到 Viewcontroller ?
-
不,我不想要这个。是否有可能以编程方式进行?
-
您是否从情节提要创建了视图控制器?
-
是的。但是由于导航栏由于显示(例如推送)segue而自动存在,我无法编辑导航栏并通过GUI制作按钮。这就是我以编程方式创建它的原因。
-
@Walker 实际上,导航栏应该还在。能否发送您的故事板的屏幕截图?
标签: swift viewcontroller rightbarbuttonitem