UIScrollView中的UIToolbar使用UIViewController修复为滚动为子视图问题

时间:2010-02-07 00:23:22

标签: iphone uiscrollview uitoolbar

我遇到了一个我不知道如何解决的大问题......

我的UIToolbar应该在屏幕底部固定,显示在整个屏幕上。

在我的情况下,我有:

一个UIViewController

使用UIScrollView滚动图像。

所以我需要屏幕底部的工具栏,而是替换图像滚动和所有屏幕的ocupies。这种情况发生在我从iphone Xcode的V2移到V3之前......显示确定...

我将简要解释我是如何初始化事物的: 在h文件中UIScrollView * myScroll; 在.M文件中我有 UIToolbar *工具栏;

然后在(void)viewDidLoad {

toolbar = [UIToolbar new];
toolbar.barStyle = UIBarStyleDefault;

toolbar.frame = CGRectMake(0, 410, 320, 50);
------------------------

myScroll.contentSize = CGSizeMake(myImage.frame.size.width, myImage.frame.size.height);

myScroll.maximumZoomScale = 4.0;
myScroll.minimumZoomScale = 1;

myScroll.clipsToBounds = YES;
CGRect frame2 = myImage.frame;

frame2.origin.y=frame2.origin.y+40;
myScroll.contentOffset=frame2.origin;



myScroll.delegate = self;

[myScroll addSubview:myImage];  

    [myScroll.superview addSubview:toolbar];    

所以工具栏上设置的框架不起作用......它将自己设置在整个屏幕上......

我不想扩展UIScrollView,因为我想要一些与这个类函数相关的按钮。

我想要实现的功能是拥有可缩放的平移照片和一些选项,评论,投票和上一页。从工具栏alt text http://www.freeimagehosting.net/image.php?ef28ce0bb4.jpg

中的下一个等等

这是预览:

1 个答案:

答案 0 :(得分:1)

最简单的方法是使用Interface Builder设置工具栏。

只需将UIToolbar放在窗口中,然后将其连接到视图控制器即可。以下是以编程方式设置按钮的方法,但您可以轻松地将它们添加到IB中并将它们连接到那里。

- (void)viewDidLoad {
    UIBarButtonItem *addButton = [[UIBarButtonItem alloc] 
                              initWithBarButtonSystemItem:UIBarButtonSystemItemAdd 
                              target:self 
                              action:@selector(insertNewObject)];

    NSArray *items = [NSArray arrayWithObject:addButton];
    self.toolbar.items = items;
}