请问一个 IOS 开发的问题,动态修改 PageViewController 的高度( Swift 开发)或者 PageViewController 如何根据每一页的内容高度自动变化 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Xcution
V2EX    Apple

请问一个 IOS 开发的问题,动态修改 PageViewController 的高度( Swift 开发)或者 PageViewController 如何根据每一页的内容高度自动变化

  •  
  •   Xcution 2021 年 2 月 20 日 1976 次点击
    这是一个创建于 1810 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我使用 PageViewController,但是 PageViewController 又不能直接到屏幕底部,它的下方还要显示其他内容,由于每一页内容高度不相同,如果我直接定死高度的话,要么会遮挡要么就是会显示多余的空白内容,我就想在滑动的时候根据内容的高度动态修改 PageViewController 的高度,但是设置好像不行,永远都是显示的第一次显示的高度。我又不知道我这种写法到底对不对,按理说 PageViewController 的高度会根据内容自动适应应该才是最好的,但是我找了很久都没找到,就只有想自己动态设置高度,但是好像还是不行,因为刚刚接触 IOS 开发,对这个内容自适应这块有点蒙,安卓的话直接一个属性就搞定了,好像 IOS 也没有,头疼,这问题搞了几天了,还是没法解决,求各位大佬指点一下
    massacreformash
        1
    massacreformash  
       2021 年 2 月 20 日
    PageViewController 的坑太多了,一般都是考虑自己造个轮子来用
    好久不做 iOS 了,我记得应该是用 UIScrollView 套 UIScrollView 就可以实现,算好各种 Offset 就可以了
    这样的话,可以自己在点击切换 page 的时候,各种魔改想要的效果
    Xcution
        2
    Xcution  
    OP
       2021 年 2 月 20 日
    @massacreformash 使用 UIScrollView 确实也可以实现 PageViewController 的功能,就想着有了现成的了,就没有自己再写了
    massacreformash
        3
    massacreformash  
       2021 年 2 月 20 日
    @Xcution 我有点儿忘了在 iOS 的哪个版本里面 PageViewController 有坑了,会在特定情况下丢 ViewController 的引用导致崩溃,而且一直没修复。不知道现在修了没有。
    我个人还是建议弄个自定义的
    CommandZi
        4
    CommandZi  
       2021 年 2 月 20 日
    不太明白你说的效果,按理说 Autolayout 已经能实现自适应
    Building
        5
    Building  
       2021 年 2 月 20 日 via iPhone
    一般来说官方提供的控件,就是这么死板的。
    ai277014717
        6
    ai277014717  
       2021 年 2 月 20 日
    看了下文档。PageViewController delegate 中没有调节 height 的函数。可以通过动态的修改 PageViewController 中 view 的 height 或者相关约束来达到目的。
    leon0918
        7
    leon0918  
       2021 年 2 月 20 日
    用代理自己算高度,赋值。是很麻烦的,先找找 github,不行自己封装一个。
    ihwbunny
        8
    ihwbunny  
       2021 年 2 月 20 日
    这种纯技术的讨论,给坛子增辉不少
    JHExp
        9
    JHExp  
       2021 年 2 月 20 日
    你的每一页内容都是 uiscrollview 的子类的话 固定高度也能滑啊
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1828 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 00:22 PVG 08:22 LAX 16:22 JFK 19:22
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86