如何动态设置 UIScrollView 的内容大小

发布于 2024-12-01 15:42:26 字数 274 浏览 0 评论 0原文

我正在开发一个使用 UIScrollView 来显示图像和一些文本的应用程序。当我为 UIscrollView 设置固定大小时,整个事情都可以正常工作:

[scrollview setContentSize:(CGSizeMake(320, 480))];

我的问题是文本是通过某些网络服务提供的,大小各不相同,所以我想我必须设置内容大小是动态的,有人可以告诉我该怎么做吗?有关信息,图像的大小是固定的。先感谢您。

I'm working on an app that uses a UIScrollView to display an image and some text. I have the whole thing to work properly when i set a fixed size for the UIscrollView ex:

[scrollview setContentSize:(CGSizeMake(320, 480))];

My problem is that the text is fed via some web services an the size varies so i guess i will have to set the content size dynamically, can somebody please tell me how to do that. For info the size of the image is fixed. Thank you in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

仅此而已 2024-12-08 15:42:26

您需要滚动视图来设置内容大小,因此首先在视图中设置 deragand drop uiscrollview 并设置 IBOutlat 和 deleget,然后在 viewdidload 中设置内容大小。像那样..

if (PhotoPathArray.count > 0)
{
    int y=5,x=-87;

    for(int i=0;i<[PhotoPathArray count];i++)
    {

        if(i%3==0 && i!=0)
        {
            y=y+100;
            x=13;
            scroll.contentSize=CGSizeMake(320, y+130);
        }
        else
        {
            x=x+100;
        }


        UIButton *btn=[UIButton buttonWithType:UIButtonTypeCustom];
        btn.tag=i;
        [btn addTarget:self action:@selector(imegbtnclick:) forControlEvents:UIControlEventTouchUpInside];
        btn.frame=CGRectMake(x,y, 95,95);
        [scroll addSubview:btn];
    }
}

;

You need scrollview to set content size, so first of all set deragand drop uiscrollview in view and set IBOutlat and deleget and than after viewdidload in set content size. like that..

if (PhotoPathArray.count > 0)
{
    int y=5,x=-87;

    for(int i=0;i<[PhotoPathArray count];i++)
    {

        if(i%3==0 && i!=0)
        {
            y=y+100;
            x=13;
            scroll.contentSize=CGSizeMake(320, y+130);
        }
        else
        {
            x=x+100;
        }


        UIButton *btn=[UIButton buttonWithType:UIButtonTypeCustom];
        btn.tag=i;
        [btn addTarget:self action:@selector(imegbtnclick:) forControlEvents:UIControlEventTouchUpInside];
        btn.frame=CGRectMake(x,y, 95,95);
        [scroll addSubview:btn];
    }
}

;

醉酒的小男人 2024-12-08 15:42:26
// Calculate scroll view size
float sizeOfContent = 0;
int i;
for (i = 0; i < [myScrollView.subviews count]; i++) {
    UIView *view =[myScrollView.subviews objectAtIndex:i];
    sizeOfContent += view.frame.size.height;
}

// Set content size for scroll view
myScrollView.contentSize = CGSizeMake(myScrollView.frame.size.width, sizeOfContent);
// Calculate scroll view size
float sizeOfContent = 0;
int i;
for (i = 0; i < [myScrollView.subviews count]; i++) {
    UIView *view =[myScrollView.subviews objectAtIndex:i];
    sizeOfContent += view.frame.size.height;
}

// Set content size for scroll view
myScrollView.contentSize = CGSizeMake(myScrollView.frame.size.width, sizeOfContent);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文