2017-01-11 9 views
0

Я работаю над многостраничным брошюром и использовал segues для присоединения к страницам. Я добираюсь до точки, где у меня 20 или около того страниц, и система segue кажется беспорядочной.Сделать кнопку показать новый вид на клик, без использования Segue?

Я создал кнопку программно в ViewController. Я просто хочу, чтобы эта кнопка всегда ссылалась на другой вид независимо от того, на какой странице он включен. Это означало бы, что мне не придется рисовать сеги сотни раз!

class ViewController: UIViewController { 

override func viewDidLoad() { 
    let button:UIButton = UIButton(frame: CGRect(x: 25, y: 50, width: 250, height: 75)) 
    button.backgroundColor = .black 
    button.setTitle("", for: .normal) 
    button.addTarget(self, action:#selector(self.buttonClicked), for: .touchUpInside) 
    self.view.addSubview(button) 
} 

func buttonClicked() { 
    print("Button Clicked") 
} 

Я не могу найти какой-либо код в любом месте, что позволит мне сделать это, так что мне интересно, если это вообще возможно.

Любая помощь приветствуется.

+0

Создание пользовательского вида, типа UIView – iDeveloper

ответ

2

Я предполагаю, что вы хотите, чтобы показать другую страницу программно без segue.Here это пример кода.

let storyboard: UIStoryboard = UIStoryboard(name: "yourStoryboardName", bundle: nil) 
let vc: UIViewController = storyboard.instantiateViewControllerWithIdentifier("YoourViewControllerStoryBoardID") as UIViewController 
self.present(vc, animated: true, completion: nil) 

Этот метод создает новый экземпляр указанного контроллера представления каждый раз, когда вы его вызываете.

Если у вас уже есть указатель viewController, просто представьте его.

+0

Работал отлично. Спасибо! –

1

Я думаю, что лучший способ сделать что-то подобное - это PageViewController. автоматически добавляет сенсорные и ... есть полный учебник об этом here:

некоторых демо:

enter image description here

+0

Я хочу, чтобы достичь «кнопки домой», которая всегда ссылки на главную страницу. Таким образом, удары и другие сенсорные жесты не очень помогают. Мне нужна кнопка для ссылки на страницу. Спасибо, хотя, вероятно, я буду использовать это в будущих проектах! –

0

Хорошо, вот что я понимаю, вы хотите переключить ViewControllers на нажатие кнопки.

Для ViewController вы также хотите, чтобы Seque также добавили Registrationvc в 'Storyboard ID' под Custom Class с правой стороны.

@IBAction func differentSequeAction(sender: AnyObject) 
{ 

    let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil) 
    let SignUp: UIViewController = mainStoryboard.instantiateViewController(withIdentifier: "Signupvc") 

    self.present(SignUp, animated: true, completion: nil) 

} 

 Смежные вопросы

  • Нет связанных вопросов^_^