我正在学习如何使用UIScrollView,我正在添加一些按钮进行测试。但是,我发现每当我添加一个按钮时,无论我在视图中放置多少小或哪里,它都会导致大量的水平滚动。这是我的相关代码:
- (void)viewDidLoad
{
[super viewDidLoad];
[_scroller setScrollEnabled:YES];
[_scroller setContentSize:CGSizeMake(640, 3000)];
UIButton *btn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[btn setTitle:@"Cool title" forState:UIControlStateNormal];
[btn setFrame:CGRectMake(50, 50, 50, 50)];
[btn addTarget:self action:@selector(selectFav) forControlEvents:UIControlEventTouchUpInside];
[_scroller addSubview:btn];
// Do any additional setup after loading the view, typically from a nib.
}
所以,即使按钮看起来只是在我视图的左上角,我在按钮右边有一堆滚动的空白区域,但我根本不需要任何水平滚动。 / p>
答案 0 :(得分:5)
UIScrollView的内容大小为640.如果是iPhone,则可能需要320.更好的是,将内容大小宽度设置为与UIScrollView宽度相同的宽度。
[_scroller setContentSize:CGSizeMake(_scroller.size.width, 3000)];
您可能还希望UIScrollView具有与视图控制器相同的宽度。