开发者

Rotating Three20 TTPhotoViewController inside TabBarController

Adding Three20 TTPhotoViewController on 开发者_运维技巧an empty UIWindow Rotation were working like a charm.

But when I moved the TTPhotoViewController to be created from UINavigationController inside a UITabBarController it does not rotate at all.

I made sure I return YES for every shouldAutorotateToInterfaceOrientation function.

Does Three20 Photo Gallery work in side UITabBarController with rotation?


How am I doing this?

[[TTURLRequestQueue mainQueue] setMaxContentLength:0];

TTNavigator *navigator = [TTNavigator navigator];
navigator.persistenceMode = TTNavigatorPersistenceModeAll;

navigator.window = [UIApplication sharedApplication].keyWindow;
TTURLMap *map = navigator.URLMap;
[map from:@"tt://appPhotos" toSharedViewController:[PhotoViewController class]];
[navigator openURLAction:[TTURLAction actionWithURLPath:@"tt://appPhotos"]];


Update 1: after reading some posts I can now rotate the images only inside the TTScrollView but the navigation bar is not rotating.

Update 2: I have subclass-ed both UITabBarController and UINavigationController to override shouldAutorotateToInterfaceOrientation, but it did not help.


I have weirdly solved my issue by removing the TabBarController from the Window object and when going back I add the TabBarController to the window again.


You could just rotate the scrollView.. Anyway if you rotate the navController it would look weird when you pop the photoviewcontroller (if your gallery isn't rootViewController). I've rotated the scrollView and hided the navBar and bottom bar when going into landscape mode and it looks good.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜