2012-02-19 5 views
1

Я создал UIViewДобавление представления в UIScrollView

- (id)initWithFrame:(CGRect)frame 
{ 
    self = [super initWithFrame:frame]; 
    if (self) { 
     // Initialization code 

     UIImage *image2 = [UIImage imageNamed:@"pinGreen_v1.png"]; 
     UIImage *image1 = [UIImage imageNamed:@"PinDown1.png"]; 

     UIButton *btn1 = [[UIButton alloc]initWithFrame:CGRectMake(0, 10, 40, 40)]; 
     [btn1 setImage:image2 forState:UIControlStateNormal]; 
     [self addSubview:btn1]; 

     for(int i =1; i<20; i++){ 
      UIButton *btn2 = [[UIButton alloc]initWithFrame:CGRectMake(40 * i, 40, 40, 40)]; 
      [btn2 setImage:image1 forState:UIControlStateNormal]; 
      [btn2 addTarget:self 
        action:@selector(buttonPressed) 
      forControlEvents:UIControlEventTouchUpInside]; 
      [self addSubview:btn2]; 
     } 

    } 
    return self; 
} 

С выше коде я рисую образы, на мой взгляд. Я загружаю этот вид с моего контроллера. Мне нужно поставить этот вид внутри UIScrollview. Где я должен создать прокрутку? В приведенном выше представлении или в контроллере представления, где создано вышеописанное представление.

Код внутри моей точки зрения контроллера:

DrawLineInMyClass *drawLines = [[DrawLineInMyClass alloc]initWithFrame:CGRectMake(0, 0, 320, 400)]; 
drawLines.backgroundColor = [UIColor blackColor]; 
[self.view addSubview:drawLines]; 
[drawLines release]; 

Я должен иметь возможность прокручивать изображения внутри моей точки зрения.

ответ

3

Я бы создал прокрутку в viewcontroller и добавил к ней представление.

UIScrollView *scroll = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)]; 
scroll.pagingEnabled = YES; 

DrawLineInMyClass *drawLines = [[DrawLineInMyClass alloc]initWithFrame:CGRectMake(0, 0, frame.size.width, frame.size.height)]; 
drawLines.backgroundColor = [UIColor blackColor]; 
[self.view addSubview:drawLines]; 

[scroll addSubview:drawLines]; 

scroll.contentSize = CGSizeMake(self.view.frame.size.width*drawLines.frame.size.width, self.view.frame.size.height); 
[self.view addSubview:scroll]; 
[drawLines release]; 
[scroll release]; 
+1

обе эти линии? если вы добавили его для прокрутки и для просмотра? [self.view addSubview: drawLines]; [прокрутка addSubview: drawLines]; – rowdyruckus

Смежные вопросы