是否可以在 UIView 中使用 UIScrollView 而不是 UIViewController?
我尝试在 UIView 中使用,但是这不起作用。我找不到适合我的项目的样品。
我需要水平滚动大小为 90x90 像素的视图。
这是我的代码
UIScrollView* scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 35, 400, 200)];
[scrollView setScrollEnabled:YES];
scrollView.pagingEnabled = YES;
[scrollView setDelegate:self];
scrollView.backgroundColor = [UIColor brownColor];
[scrollView setShowsHorizontalScrollIndicator:YES];
[scrollView setIndicatorStyle:UIScrollViewIndicatorStyleDefault]; scrollView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
scrollView.contentMode = UIViewContentModeScaleToFill;
[scrollView setContentSize:CGSizeMake(630,0)];
[self addSubview:scrollView];
//self.frame = CGRectMake(0, 0, 1024, 768);
[self setBackgroundColor:[[UIColor blackColor] colorWithAlphaComponent:0.8]];
circleView = [[UIView alloc] initWithFrame:CGRectMake(100,100,90,90)];
circleView.backgroundColor = [[UIColor whiteColor] colorWithAlphaComponent:1];
//circleView.layer.borderColor = [[UIColor blackColor] CGColor];
//circleView.layer.borderWidth = 4;
UILabel* circleIndex = [[UILabel alloc] init];
circleIndex.frame = CGRectMake(30, 25, 40, 40);
[circleIndex setFont:[UIFont fontWithName:@"Arial-BoldMT" size:40]];
[circleIndex setText:@"A"];
[circleView addSubview:circleIndex];
circleView2 = [[UIView alloc] initWithFrame:CGRectMake(100+100,100,90,90)];
circleView2.backgroundColor = [[UIColor whiteColor] colorWithAlphaComponent:1];
circleView3 = [[UIView alloc] initWithFrame:CGRectMake(100+100+100,100,90,90)];
circleView3.backgroundColor = [[UIColor whiteColor] colorWithAlphaComponent:1];
circleView4 = [[UIView alloc] initWithFrame:CGRectMake(100+100+100+100,100,90,90)];
circleView4.backgroundColor = [[UIColor whiteColor] colorWithAlphaComponent:1];
circleView5 = [[UIView alloc] initWithFrame:CGRectMake(100+100+100+100+100,100,90,90)];
circleView5.backgroundColor = [[UIColor whiteColor] colorWithAlphaComponent:1];
circleView6 = [[UIView alloc] initWithFrame:CGRectMake(100+100+100+100+100+100,100,90,90)];
circleView6.backgroundColor = [[UIColor whiteColor] colorWithAlphaComponent:1];
[scrollView addSubview:circleView];
[scrollView addSubview:circleView2];
[scrollView addSubview:circleView3];
[scrollView addSubview:circleView4];
[scrollView addSubview:circleView5];
[scrollView addSubview:circleView6];
exitView = [[UIView alloc] initWithFrame:CGRectMake(70,-5,30,30)];
exitView.layer.cornerRadius = 15;
exitView.backgroundColor = [UIColor redColor];
exitView.layer.borderColor = [[UIColor whiteColor] CGColor];
exitView.layer.borderWidth = 2;
[circleView addSubview:exitView];
UIView *exitLabel = [[UIView alloc] initWithFrame:CGRectMake(8,13,15,3)];
exitLabel.backgroundColor = [UIColor clearColor];
exitLabel.layer.borderColor = [[UIColor whiteColor] CGColor];
exitLabel.layer.borderWidth = 2;
[exitView addSubview:exitLabel];
UILongPressGestureRecognizer *longPress =
[[UILongPressGestureRecognizer alloc] initWithTarget:self
action:@selector(handleLongPress:)];
[circleView addGestureRecognizer:longPress];
UITapGestureRecognizer *singlePress =
[[UITapGestureRecognizer alloc] initWithTarget:self
action:@selector(handleSinglePress:)];
[exitView addGestureRecognizer:singlePress];
//[longPress release];
UITapGestureRecognizer *singlePress2 =
[[UITapGestureRecognizer alloc] initWithTarget:self
action:@selector(singlePress:)];
[circleView2 addGestureRecognizer:singlePress2];
[exitView setHidden:YES];
[circleView bringSubviewToFront:exitView];
[exitView setUserInteractionEnabled:YES];
}
return self;
}