[英]Issue with calling viewWillAppear of presenting view controller when presented one is dismissed
[英]IOS/Autolayout: Change to Presenting View After Presented Controller Dismissed
我正在嘗試使自動布局在帶有scrollview的視圖控制器上正常工作。 第一次加載視圖控制器時,它沒有執行我想要的操作。 但是,如果我啟動第二個模式VC(恰好是Edit VC)然后不做任何其他操作就將其關閉,則原始VC會正確布局(我想要的方式)。
首先,文本視圖的大小不適合其內容,而僅反映了故事板上的占位符視圖。
在啟動和關閉模式VC之后,textview確實采用了其內容。
據我所知,在第二次VC啟動過程中沒有發生任何事情可以改變第一次VC的情況。
我的日志顯示,最初加載時,第一個VC僅調用一次ViewDidLoad。 Viewwillappear被第一個VC調用兩次:最初加載時,然后關閉第二個VC之后。
當您關閉已呈現的VC時,除了view將出現以外,還有其他方法會觸發該VC嗎?
這是VC1中用於啟動第二個VC的代碼。
UIStoryboard *storyBoard = self.storyboard;
IDEditListVC *editVC =
[storyBoard instantiateViewControllerWithIdentifier:@"editlist"];
editVC.list = _list;
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController: editVC];
[self presentModalViewController:nav animated:YES];
//這是VC1 viewWillAppear中的代碼,用於獲取文本視圖的高度。 啟動和關閉第二個VC前后的結果更改
self.textView.text = listText;
float listHeight = self.textView.contentSize.height;
NSLog(@"listHeight%f",listHeight);
嘗試這個
-(void)viewDidLayoutSubviews
{
self.textView.text = listText;
float listHeight = self.textView.contentSize.height;
NSLog(@"listHeight%f",listHeight);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.