• UIToolBar使用示例


    可以在toolBar上添加任何View。其实它的原理是把你要添加的View先加到UIBarButtonItem里面,最后再把UIBarButtonItem数组一次性放到toolbar的items里面。

    1.首先,我们看一下UIBbarButtonItem有哪些初始化方法,这也可以看出,它可以被定义为什么东东,然后加到UIToolBar上面去。

    根据SDK的文档,我们可以发现UIBarButtonItem有如下几种初始化的方法:

    -initWithTitle(添加button用这个)

    -initWithImage

    -initWithBarButtonSystemItem(添加系统自定义的button,形状跟大小都已经固定了)下面链接里面有按钮图片样式

    https://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIBarButtonItem_Class/Reference/Reference.html

    -initWithCustomView(添加除了button以外的View)

    第4种方法就是我们添加各种作料的接口,所以今天的主角其它也是它。

    2.在UIToolBar上面添加Title

    view plaincopy to clipboardprint?

    UIToolbar *myToolBar = [[UIToolbar alloc] initWithFrame:  

                                                        CGRectMake(0.0f, 0.0f, 320.0f, 44.0f)];  

                                                          

    NSMutableArray *myToolBarItems = [NSMutableArray array];  

    [myToolBarItems addObject:[[[UIBarButtonItem alloc]  

                                                            initWithTitle:@"myTile"   

                                                            style:UIBarButtonItemStylePlain   

                                                            target:self   

                                                            action:@selector(action)] autorelease]];  

    [myToolBar setItems:myToolBarItems animated:YES];  

    [myToolBar release];  

    [myToolBarItems];                                                         

    setItems传入值或者说items是一个对象数组。

    3.在UIToolBar上面添加image

    view plaincopy to clipboardprint?

    [myToolBarItems addObject:[[[UIBarButtonItem alloc]  

                                            initWithImage:[UIImage imageNamed:@"myImage.png"]   

                                            style:UIBarButtonItemStylePlain   

                                            target:self   

                                            action:@selector(action)]];   

    4.在UIToolBar上面添加SystemItem

    [myToolBarItems addObject:[[[UIBarButtonItem alloc]  

                                            initWithBarButtonSystemItem:UIBarButtonSystemItemPlay   

                                            target:self   

                                            action:@selector(action)] autorelease]];   

    Note:

    initWithBarButtonSystemItem初始化:

    - (id)initWithBarButtonSystemItem:(UIBarButtonSystemItem)systemItem target:(id)target action:(SEL)action

    Defines system defaults for commonly used items.

    typedef enum {  

        UIBarButtonSystemItemDone,  

        UIBarButtonSystemItemCancel,  

        UIBarButtonSystemItemEdit,  

        UIBarButtonSystemItemSave,  

        UIBarButtonSystemItemAdd,  

        UIBarButtonSystemItemFlexibleSpace,  

        UIBarButtonSystemItemFixedSpace,  

        UIBarButtonSystemItemCompose,  

        UIBarButtonSystemItemReply,  

        UIBarButtonSystemItemAction,  

        UIBarButtonSystemItemOrganize,  

        UIBarButtonSystemItemBookmarks,  

        UIBarButtonSystemItemSearch,  

        UIBarButtonSystemItemRefresh,  

        UIBarButtonSystemItemStop,  

        UIBarButtonSystemItemCamera,  

        UIBarButtonSystemItemTrash,  

        UIBarButtonSystemItemPlay,  

        UIBarButtonSystemItemPause,  

        UIBarButtonSystemItemRewind,  

        UIBarButtonSystemItemFastForward,  

        UIBarButtonSystemItemUndo,        // iPhoneOS 3.0  

        UIBarButtonSystemItemRedo,        // iPhoneOS 3.0  

    } UIBarButtonSystemItem;  

    5.在UIToolBar上面添加其它各种控件,最自由意义,最有意思的,我把它放在最后来讲。我们使用initWithCustomView来完成,

    这里需要看一下initWithCustomView的定义:

    - (id)initWithCustomView:(UIView *)customView

    可以看出,它的参数是一个VIEW,所以我们给它的配料要正确哦才行哦,否则,你就等着时间DIDADIDA的流失吧.

    A>加一个开关switch:

    [myToolBarItems addObject:[[[UIBarButtonItem alloc]     

                                    initWithCustomView:[[[UISwitch alloc] init] autorelease]]  

                                        autorelease]];  

    B>加一个按钮UIBarButtonItem

    UIBarButtonItem *myButton = [[[UIBarButtonItem alloc]  

                                     initWithTitle:@"myButton"  

                                     style:UIBarButtonItemStyleBordered  

                                     target:self   

                                     action:@selector(action)]autorelease];  

    get1Button.width = 50;  

    [myToolBarItems addObject:myButton];      

    C>加一个文本Label

    view plaincopy to clipboardprint?

    UILabel *myLabel = [[UILabel alloc] initWithFrame:CGRectMake(40.0f, 20.0f, 45.0f, 10.0f)];  

    myLabel.font=[UIFont systemFontOfSize:10];  

    //myLabel.backgroundColor = [UIColor clearColor];  

    //myLabel.textAlignment=UITextAlignmentCenter;  

    UIBarButtonItem *myButtonItem = [[UIBarButtonItem alloc]initWithCustomView:myLabel];  

    [myToolBarItems addObject: myButtonItem];     

    [mylabel release];  

    [myButtonItem release];  

    D>加一个进度条UIProgressView

    UIProgressView *myProgress = [[UIProgressView alloc] initWithFrame:CGRectMake(65.0f, 20.0f, 90.0f, 10.0f)];  

    UIBarButtonItem *myButtonItem = [[UIBarButtonItem alloc]initWithCustomView:myProgress];  

    [myToolBarItems addObject: myButtonItem];  

    [myProgress release];                                             

    [myButtonItem release];  

    可以加使用initWithCustomView制作各种button,这里就不在这里一个一个在加了。我想你应该也已经掌握了如何添加各种buttonItem的方法了。

  • 相关阅读:
    hdu 1028 Ignatius and the Princess III (n的划分)
    CodeForces
    poj 3254 Corn Fields (状压DP入门)
    HYSBZ 1040 骑士 (基环外向树DP)
    PAT 1071 Speech Patterns (25)
    PAT 1077 Kuchiguse (20)
    PAT 1043 Is It a Binary Search Tree (25)
    PAT 1053 Path of Equal Weight (30)
    c++ 常用标准库
    常见数学问题
  • 原文地址:https://www.cnblogs.com/linyawen/p/2545668.html
Copyright © 2020-2023  润新知