亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

導航控制器推式視圖控制器

導航控制器推式視圖控制器

繁星點點滴滴 2019-10-30 10:11:56
題如何僅使用按鈕的touch up內部事件從一個視圖控制器導航到另一個視圖控制器?更多信息我在一個示例項目中嘗試執行的步驟是:創建示例單視圖應用程序。為用戶界面(ViewController2)添加一個新文件->具有XIB的Objective-C類。在ViewController.xib中添加一個按鈕,并控制單擊ViewController.h的按鈕以創建內部補全事件。轉到ViewController.m中新創建的IBAction并將其更改為...- (IBAction)GoToNext:(id)sender {    ViewController2 *vc2 = [[ViewController2 alloc] initWithNibName:@"ViewController2" bundle:nil];    [[self navigationController] pushViewController:vc2 animated:YES];}代碼運行無誤,我使用NSLog測試了按鈕的功能。但是,它仍然不能將我導航到第二個視圖控制器。任何幫助,將不勝感激。
查看完整描述

3 回答

?
智慧大石

TA貢獻1946條經驗 獲得超3個贊

迅捷3


 **Push**

喜歡


let storyboard = UIStoryboard(name: "Main", bundle: nil)

let vc = storyboard.instantiateViewControllerWithIdentifier("NewsDetailsVCID") as NewsDetailsViewController 

 vc.newsObj = newsObj

 navigationController?.pushViewController(vc,

 animated: true)

或更安全


  if let viewController = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "NewsDetailsVCID") as? NewsDetailsViewController {

        viewController.newsObj = newsObj

        if let navigator = navigationController {

            navigator.pushViewController(viewController, animated: true)

        }

    }

當下


   let storyboard = UIStoryboard(name: "Main", bundle: nil)

   let vc = self.storyboard?.instantiateViewControllerWithIdentifier("NewsDetailsVCID") as! NewsDetailsViewController

      vc.newsObj = newsObj

           present(vc!, animated: true, completion: nil)  

或更安全


   if let vc = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "NewsDetailsVCID") as? NewsDetailsViewController

     {


     vc.newsObj = newsObj

    present(vc, animated: true, completion: nil)

    }






//Appdelegate.m


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

{

    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

    // Override point for customization after application launch.

    self.viewController = [[ViewController alloc] initWithNibName:@"ViewController"

                                                       bundle:nil];

    UINavigationController *navigation = [[UINavigationController alloc]initWithRootViewController:self.viewController];

    self.window.rootViewController = navigation;

    [self.window makeKeyAndVisible];

    return YES;

}



//ViewController.m


- (IBAction)GoToNext:(id)sender 

{

    ViewController2 *vc2 = [[ViewController2 alloc] init];     

    [self.navigationController pushViewController:vc2 animated:YES];

}

迅速


//Appdelegate.swift


func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: NSDictionary?) -> Bool {

    self.window = UIWindow(frame: UIScreen.mainScreen().bounds)


    let navigat = UINavigationController()

    let vcw = ViewController(nibName: "ViewController", bundle: nil)


    // Push the vcw  to the navigat

    navigat.pushViewController(vcw, animated: false)


    // Set the window’s root view controller

    self.window!.rootViewController = navigat


    // Present the window

    self.window!.makeKeyAndVisible()

    return true

}


//ViewController.swift


@IBAction func GoToNext(sender : AnyObject)

{

    let ViewController2 = ViewController2(nibName: "ViewController2", bundle: nil)

    self.navigationController.pushViewController(ViewController2, animated: true)

}


查看完整回答
反對 回復 2019-10-30
?
動漫人物

TA貢獻1815條經驗 獲得超10個贊

  UIStoryboard* storyboard = [UIStoryboard storyboardWithName:@"storyBoardName" bundle:nil];

    MemberDetailsViewController* controller = [storyboard instantiateViewControllerWithIdentifier:@"viewControllerIdentiferInStoryBoard"];

[self.navigationController pushViewController:viewControllerName animated:YES];

斯威夫特4:


let storyBoard = UIStoryboard(name: "storyBoardName", bundle:nil)

let memberDetailsViewController = storyBoard.instantiateViewController(withIdentifier: "viewControllerIdentiferInStoryBoard") as! MemberDetailsViewController

self.navigationController?.pushViewController(memberDetailsViewController, animated:true)


查看完整回答
反對 回復 2019-10-30
?
慕姐8265434

TA貢獻1813條經驗 獲得超2個贊

對于Swift,請使用以下代碼:


 func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: NSDictionary?) -> Bool {

    self.window = UIWindow(frame: UIScreen.mainScreen().bounds)

    self.window!.backgroundColor = UIColor.whiteColor()


    // Create a nav/vc pair using the custom ViewController class


    let nav = UINavigationController()

    let vc = NextViewController(nibName: "NextViewController", bundle: nil)


    // Push the vc onto the nav

    nav.pushViewController(vc, animated: false)


    // Set the window’s root view controller

    self.window!.rootViewController = nav


    // Present the window

    self.window!.makeKeyAndVisible()

    return true


}

ViewController:


 @IBAction func Next(sender : AnyObject)

{

    let nextViewController = DurationDel(nibName: "DurationDel", bundle: nil)


    self.navigationController.pushViewController(nextViewController, animated: true)

}


查看完整回答
反對 回復 2019-10-30
  • 3 回答
  • 0 關注
  • 702 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號