【问题标题】:Adding a view to UIScrollview向 UIScrollview 添加视图
【发布时间】:2012-02-19 10:26:34
【问题描述】:

我创建了一个UIView

- (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];

我应该能够滚动浏览我视图中的图像。

【问题讨论】:

    标签: iphone ios uiview uiscrollview


    【解决方案1】:

    我会在视图控制器中创建滚动视图并将视图添加到其中。

    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];
    

    【讨论】:

    • 这两行?如果您将其添加到滚动也可以查看? [self.view addSubview:drawLines]; [滚动 addSubview:drawLines];
    猜你喜欢
    • 1970-01-01
    • 2023-03-05
    • 1970-01-01
    • 1970-01-01
    • 2012-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-04
    相关资源
    最近更新 更多