需求:iPhone电子书应用, 每个页面都是一张图片,每页根据文章长度不同图片有长有短(图片宽度固定为屏幕宽度,高度不定)
左右划切换页面,某个页面长的话,在该页上下滑动改页面查看内容。目前卡在具体实现上面,试过动态设置contentsize,试过scrollview嵌套scrollview,可能能力有限,没有成功。
动态设置contentsize
用4张图片测试:
1. 设置了一个scrollview,contentsize为(4*屏幕宽, 屏幕高),对水平方向做swipe识别
2. 捕捉scrollview停止的事件,查看当前停留在第N个页面(第N张图片),然后把scrollview的contentsize设成了(屏幕宽,第N张图片高)
这里涉及到contentoffset的问题,所以直接跳到第一张图片的位置了,从这里开始做不下去了。。。。
scrollview嵌套scrollview
用4张图片测试:
1. 设置了一个父scrollview,contentsize为(4*屏幕宽,屏幕高),直接用缺省的pageenable机制
2. 分别把4张图片嵌到四个scrollview里面,contentsize为(屏幕宽,图片高),父scrollview依次加载各scrollview为 subview
结果,相当于父scrollview的contentview高度没有子的高度大,程序貌似只认父scrollview的contentsize了,在每页里也不能上下滑动。。。。
目前的两种思路是不是都做不下去?初学ios,希望各位给点思路,谢谢~
contentSize를 동적으로 설정할 수 있어야 하며 ScrollView를 중첩하는 것이 좋습니다. 왜 효과가 없었는지 말해 줄 수 있습니다.
아이디어 하나 드리겠습니다. 여전히 하단에 수평 ScrollView가 있는 중첩 방법을 사용하고 PageControl을 엽니다. 각 페이지 내부에는 UIView가 있고 UIView 위에는 수직 스크롤 ScrollView가 있습니다.
이 요구 사항은 기본적으로 사진 앨범의 요구 사항과 동일합니다. 이러한 요구 사항은 일반적으로
UIScrollView
중첩된UIScrollView
을 통해 달성됩니다. 구현할 때frame
와contentSize
의 구별에 주의하세요.네스팅 아이디어는 가능합니다. 실패하면 코드만 확인하면 문제를 알 수 있습니다