首頁  >  問答  >  主體

Objective-c - 其視圖不在視窗層次結構中! IOS

1.現在遇到的問題是這樣子: 工程裡有 A B C 三個頁。
A present B頁面,B push 到C 頁面。
C 頁面裡有一個UIwebView ,加載了H5頁面, H5頁面有個按鈕調用手機的相冊 UIImagePickerController,彈出了拍照,相冊選擇的UIActionSheet, 然後我點擊相冊按鈕,程序直接退出到了 A 頁面。

2.我嘗試用A push 到B 頁面,B頁面push 到C 頁面,這樣子的話,在點擊相簿後會到系統相簿裡面,選擇圖片後會返回到H5頁裡。

3.我現在需要的是present 也能實現而不是用push。 我認為是根控制器的原因。因為C 這個頁面是H5去實現的,所以我能做什麼?


我嘗試了以下方案,

發現只要有present ,就是出現問題,而且提示問題就出現在present 那裡

某草草某草草2701 天前675

全部回覆(4)我來回復

  • phpcn_u1582

    phpcn_u15822017-05-02 09:22:08

    有一個方案可以試試:把 B、C 放到一個 UINavigationController 中管理,用 A 去 Present 這個 UINavigationController。

    回覆
    0
  • 天蓬老师

    天蓬老师2017-05-02 09:22:08

    這個要正確實現的話,A present B 頁面應該 present 的不是 B,而是以 B 為 root 的 navigationController。

    UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:BController];
    [self presentViewController:navigationController animated:YES completion:nil];

    回覆
    0
  • 怪我咯

    怪我咯2017-05-02 09:22:08

    這個寫個解決方法,但不知道有沒有問題。目前我這樣子解決的。
    我猜是根控制器的問題。然後現在就是改根控制器

    就是修改window.rootviewcontroller ,在present C 那裡跳轉改為更改window.rootviewcontroller
    C 返回的時候再更改 window.rootviewcontroller 改回去。

    回覆
    0
  • 滿天的星座

    滿天的星座2017-05-02 09:22:08

    解決方案
    http://www.skyfox.org/present...

    回覆
    0
  • 取消回覆