簡體   English   中英

如何通過單擊視圖來切換到另一個視圖控制器?

[英]How can I segue to another view controller by clicking a view?

我特別想用故事板來做這件事。 那可能嗎? 如果沒有使用swift的選項是什么?

根據Apple的說法,我不認為你可以直接從UIView制作一個segue(Control-drag):

在故事板上,按住Ctrl鍵從一個場景中的對象(例如按鈕,表格視圖單元格或選項卡視圖項目)拖動到另一個場景。

但是您可以使用UITapGestureRecognizer處理UIView中的UITapGestureRecognizer ,然后按照以下兩個選項之一進行操作:

  • 定義一個@IBActionUITapGestureRecognizer和里面你可以到其他場景很容易進行人工SEGUE。

    你可以在這里看到我的答案,看看如何從UIViewController到UITableViewController啟動手動segue segue的一步一步

  • 或者你可以直接從UITapGestureRecognizer啟動segue到另一個場景一旦它被設置為UIView

在此輸入圖像描述

由你決定。

我希望這對你有幫助。

如果你想專門使用故事板我不認為你可以通過觸摸視圖來啟動segue。 但是,您可以使用按鈕然后按住ctr並單擊按鈕並將顯示的行拖動到新視圖控制器。 您可以刪除按鈕的文本並為其指定背景顏色,甚至可以添加圖像並使其成像,使其看起來像一個視圖。

您可以控制從一個vc拖動到另一個vc,然后在Xcode右側面板的屬性檢查器中配置segue的標識符。

在你的代碼中,例如按鈕的處理程序,

你可以打電話:

[self performSegueWithIdentifier:@"yourSegueID" sender:self];

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 
{
    UITouch *touch = [[event allTouches] anyObject];

    if (touch.view == YOURVIEW)
    {
       //Perform Navigation
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM