1

众所周知,默认情况下,视图的原点位于 iPhone 屏幕的左上角。我正在尝试做一些非常简单但没有运气的事情来改变它!我想将我的 UIScrollView 的原点设置为左下角(以编程方式 ofc)。我希望避免转换(如果需要)......有没有一种简单的方法可以做到这一点?

感谢你的帮助 :)

4

5 回答 5

1
[self.scrollView setFrame:CGRectMake(0,self.view.frame.size.height,self.view.frame.size.width, -self.view.frame.size.height];

我不确定您在寻找什么,但上面的行会将滚动视图的原点设置在左下方,但如果您正在寻找,滚动视图仍将在整个视图中可见。

于 2012-12-14T14:15:03.390 回答
0

我假设您想要制作一个适合视图左下角的滚动视图。

你可以这样做。假设您的滚动视图的大小为 100x100。

UIScrollView* sc = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 360, 100, 100)];
    [self.view addSubview:sc];

该滚动视图的左下角与您的视图具有相同的点。

于 2012-12-14T15:48:10.030 回答
0

尝试这个:

您可以通过将其他位置保留为默认值来更改任何一个位置

1.修改前

UIScrollView *mainScrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0,0,320,500)];

2.如果需要修改任何一个

UIScrollView *mainScrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(10,self.view.frame.origin.y,self.view.frame.size.width,self.view.frame.size.height)];

// or

UIScrollView *mainScrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(self.view.frame.origin.x,10,self.view.frame.size.width,self.view.frame.size.height)];

//or

UIScrollView *mainScrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(self.view.frame.origin.x,self.view.frame.origin.y,320,self.view.frame.size.height)];

//or

UIScrollView *mainScrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(self.view.frame.origin.x,self.view.frame.origin.y,self.view.frame.size.width,500)];
于 2013-12-11T11:48:20.737 回答
0

self.scrollView财产contentOffset

于 2015-04-05T23:56:17.927 回答
0

此类别将为您提供一个方便的属性,可用于通过其左下方原点操作 UIView:

@interface UIView (LowerLeftOrigin)

@property (nonatomic, assign) CGPoint lowerLeftOrigin;

@end


@implementation UIView (LowerLeftOrigin)

- (void) setLowerLeftOrigin:(CGPoint)lowerLeftOrigin
{
    self.frame = CGRectMake(lowerLeftOrigin.x, 
                            lowerLeftOrigin.y - self.bounds.size.height, 
                            self.bounds.size.width, self.bounds.size.height);
}

- (CGPoint) lowerLeftOrigin
{
    return CGPointMake(self.frame.origin.x,
                       self.frame.origin.y + self.bounds.size.height);
}

@end
于 2012-12-13T10:29:04.677 回答