簡體   English   中英

iOS:如何從另一個視圖控制器類更改視圖大小/來源?

[英]iOS:How do you change a view size/origin from another view controller class?

我在屏幕上有兩個視圖(Storyboard場景),但我想從“ View B ”更改“ View A ”的size/origin 但是我下面的代碼不起作用, view保持不變:

代碼從“ View B ”添加到viewDidLoad

ViewA *viewA = [[ViewA alloc]init];
 viewA.view.frame = CGRectMake(0,100,200,2000);

如果有人可以幫助我,我將非常感激:)

我想從“視圖B”更改“視圖A”的大小/來源

視圖之間有什么關系? 如果兩個視圖由不同的視圖控制器管理,則它們不應直接相互通信。 通常,可能需要與世界其他地方進行通信的視圖在其委托上調用一個方法,該方法通常是管理它的視圖控制器。 然后,該視圖控制器將采取適當的措施-更新數據模型,向另一個視圖控制器發送消息,發布通知等。唯一應直接與給定視圖圖混淆的對象是該圖的視圖控制器。

可能沒有足夠的細節來給出良好的答案,但是假設這些視圖是同一視圖控制器的一部分,您可能希望將動作從viewA連接到控制器,這將改變viewB的框架。

假設這些視圖具有單獨的控制器,其父對象為AppDelegate,您將需要將該消息轉發給父對象並從那里處理它。

如果該動作應該影響許多控制器中的多種行為,那么您可能還需要考慮NSNotificationCenter路由。

暫無
暫無

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

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