2016-03-14 22 views
1

我有兩個視圖控制器,其中控制器ABA控制器在屏幕上顯示一些信息。在A屏幕的右上方我有一個UIButton按鈕的點擊我要顯示一個幫助屏幕,這將有一些標籤&當我觸摸屏的幫助應該消失。如何在iOS中顯示一個視圖控制器作爲疊加?

我可以通過增加在所有視圖&隱藏的頂視圖做到這一點,顯示它。但我想知道如何在UIButton的點擊第一視圖控制器上顯示HelpScreenViewController作爲半透明視圖控制器。當我點擊HelpScreenViewController時,它應該消失。

編輯: 我加入以下代碼,但事先不工作

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil]; 
UIViewController *vc = [storyboard instantiateViewControllerWithIdentifier:@"TopOverVc"]; 
    vc.view.backgroundColor = [UIColor clearColor]; 
    self.modalPresentationStyle = UIModalPresentationCurrentContext; 
    [self presentViewController:vc animated:NO completion:nil]; 

感謝。

+0

這是一個故事。你的問題是什麼?你有什麼代碼?正如在指南中所解釋的,[不要只複製整個程序](http://stackoverflow.com/help/how-to-ask)並創建一個[Minimal,Complete,and Verifiable example](http:/ /stackoverflow.com/help/mcve)。 – tmthydvnprt

+0

檢查更新問題 –

回答

0

對於你所描述的,你不需要一個視圖控制器包含了「TopOver」視圖。一個正常的UIView會更好。將其置於第一個ViewController中的界面構建器中。將它拖入您的A ViewController類以及按鈕。點擊按鈕後,只需顯示/隱藏包含所需信息的視圖即可。

+0

我知道,但在這種情況下,我的代碼變得冗長在一個file.Just避免我使用另一個視圖控制器,這樣我可以寫在otehr文件helpscreen代碼 –

+0

你仍然可以把你的代碼在一個單獨的文件 - 把它放在你的UIView子類中。將你的UIView添加到IB的UIViewController中。然後創建一個新文件,UIView的一個子類 - 將其稱爲HelpView或類似的東西。然後在IB中,找到您的UIView並將其類改爲HelpView。現在你可以把你所有的代碼放到你的新類中,並且它不必進入UIViewController。 –

+0

@LukeSmith我喜歡你的想法,但當我向下滾動視圖時如何解除視圖?有沒有類似於'dismissviewcontroller'的蘋果提供的方法,它只適用於視圖控制器,但我想爲我的UIView獲得類似的功能。 –

相關問題