取得viewController展示view

2021-07-04 07:13:47 字數 1226 閱讀 2763

非檢視類中想要隨時展示乙個view時,可以直接宣告乙個view,然後只需要將被展示的view加到當前view的子檢視,或者想把乙個view隨時加到乙個viewcontroller時,這樣就需要獲得當前螢幕的這個viewcontroller了,這個方法在網上找到了,自己用了的確可以用

//獲取當前螢幕顯示的viewcontroller

- (uiviewcontroller *)getcurrentvc}}

uiview *frontview = [[window subviews] objectatindex:0];

id nextresponder = [frontview nextresponder];

if ([nextresponder iskindofclass:[uiviewcontroller class]])

result = nextresponder;

else

result = window.rootviewcontroller;

return result;

}然後在想使用的地方,直接就可以呼叫這個函式,然後加上了,比如說現在宣告的那個view裡面寫了這個,當想加上去的時候可以直接這樣

[[self getcurrentvc].view addsubview:self]

- (uiviewcontroller *)viewcontroller 

next = next.nextresponder;

}return nil;

}

//獲取當前螢幕顯示的viewcontroller  

- (uiviewcontroller *)getcurrentvc

} }

uiview *frontview = [[window subviews] objectatindex:0];

id nextresponder = [frontview nextresponder];

if ([nextresponder iskindofclass:[uiviewcontroller class]])

result = nextresponder;

else

result = window.rootviewcontroller;

return result;

}

獲取當前顯示的ViewController

關於獲取當前viewcontroller的實現 上網查了很多,但是不全。自己整合了一下 思路通過過responder 來一步一步的找到最上層的viewcontroller uiviewcontroller result nil uiwindow window if window.windowleve...

iOS 第四天之ViewController

簡單記載下今天學的基礎 viewcontroller.m import viewcontroller.h inte ce viewcontroller property nonatomic,strong uitextfield textfield end implementation viewcon...

ALV 取得 方法

表示 alv 時 別畫面 遷移 方法 說明 下記 標準 遷移 別 alv 表示 事 可能 abap form call alv.call function reuse alv grid display exporting i callback program sy repid i callback ...