In photoscroller app (iPhone WWDC-104 Photos App) uiscrollview images shift to right when called using presentModalviewController

你说的曾经没有我的故事 提交于 2019-12-12 13:24:01

问题


I have seen the WWDC-104 video showing UIScrollView for photos. I have downloaded the Sample code too. In my app the Structure is as follows,

(Root Class)Class A ---> Class B -----------> PhotoViewController(Containing ScrollView)

I am calling the PhotoViewController class by using presentModalViewController method in Class B.

But with every swipe the new Image shifts to right on the view. A black vertical strip is visible on left of the image which widens with each swipe. So after 6 to 8 images the view becomes totally black.

I have not written any other code. Just copied the classes.

Why this happens when the PhotoViewController class is not the first class to be loaded? Is there any property that needs to be set for ScrollView ? Is there any mistake in this view Hierarchy?

Also How to start from a particular image (Load from 10th image)?

Any help/suggestion will be highly appreciated.

EDIT :

After First Horizontal Swipe,

After Second Horizontal Swipe,


回答1:


Isn't your PhotoViewController pushed by a UINavigationController when you use it in your application ?

That's the problem, the NavigationController modifies the frame of the ScrollView and the offset and extended width created by PhotoViewController is not longer there once the view appears.

The easiest way to fix this is to set the view of PhotoViewController to a regular UIView and add the ScrollView as a subview of this UIView. Then the NavigationController will modify the frame of this view but it will not touch the subview.

UIView * intermediateView = [[UIView alloc] initWithFrame:pagingScrollViewFrame];
[intermediateView addSubview:pagingScrollView];
self.view = intermediateView;

Have a look at this question for more info: Photos app-like gap between pages in UIScrollView with pagingEnabled




回答2:


it sounds like you may not be taking the inter-image margin into account. Did you also copy their resource files? If I recall correctly, their scrollview extended 'off the page' a bit to give a margin between images.



来源:https://stackoverflow.com/questions/3854508/in-photoscroller-app-iphone-wwdc-104-photos-app-uiscrollview-images-shift-to-r

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!