ios 構建工具列UIToolBar

來源:互聯網
上載者:User

使用宏分別定義文本條目,映像條目,系統條目和定製視圖條目,這些宏都提供一個可置入UIToolBar 的自動發布UIBarButtonItem。

#define COOKBOOK_PURPLE_COLOR    [UIColor colorWithRed:0.20392f green:0.19607f blue:0.61176f alpha:1.0f]
#define BARBUTTON(TITLE, SELECTOR)     [[[UIBarButtonItem alloc] initWithTitle:TITLE style:UIBarButtonItemStylePlain target:self action:SELECTOR] autorelease]
#define IMGBARBUTTON(IMAGE, SELECTOR) [[[UIBarButtonItem alloc] initWithImage:IMAGE style:UIBarButtonItemStylePlain target:self action:SELECTOR] autorelease]
#define SYSBARBUTTON(ITEM, SELECTOR) [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:ITEM target:self action:SELECTOR] autorelease]
#define CUSTOMBARBUTTON(VIEW) [[[UIBarButtonItem alloc] initWithCustomView:VIEW] autorelease]


   //建立工具列

    UIToolbar *tb = [[UIToolbar alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 320.0f, 44.0f)];
    tb.center = CGPointMake(160.0f, 200.0f);
    NSMutableArray *tbitems = [NSMutableArray array];

    [tbitems addObject:BARBUTTON(@"Title", @selector(action))];
    [tbitems addObject:SYSBARBUTTON(UIBarButtonSystemItemAdd, @selector(action))];
    [tbitems addObject:IMGBARBUTTON([UIImage imageNamed:@"TBUmbrella.png"], @selector(action))];
    [tbitems addObject:CUSTOMBARBUTTON([[[UISwitch alloc] init] autorelease])];
    [tbitems addObject:SYSBARBUTTON(UIBarButtonSystemItemFlexibleSpace, nil)];
    [tbitems addObject:IMGBARBUTTON([UIImage imageNamed:@"TBPuzzle.png"], @selector(action))];
    
    // Add fixed 20 pixel width
    UIBarButtonItem *bbi = [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace target:nil action:nil] autorelease];
    bbi.width = 20.0f;
    [tbitems addObject:bbi];
    
    tb.items = tbitems;
    [self.view addSubview:tb];
    [tb release];


工具列提示:

  處理工具列是,使用一些小技巧可能會很有用。

     1、固定空間可以擁有寬度----在所有UIBarButtonITem中,只有 UIBarBuutonSystemItemFixedSpace 條目可以被分配一個寬度,因此,建立空間條目、設定其寬度,然後在將其添加到條目列中。

     2、使用一個靈活空間進行靠左對齊或靠右對齊----在條目列表中開始添加一個 UIBarButtonSystemITemFlexibleSpace 會使所有剩餘條目靠右對齊。在末尾添加一個,則靠左對齊。使用兩個 UIBarButtonSystemItemFlexibleSpace ,一個添加在開頭,一個添加在末尾,會使剩餘條目置中對齊。

     3、考慮遺漏的條目----根據上下文隱藏欄按鈕條目時,不要只使用靈活的空間分配來除去條目。而應使用一個與條目原來大小匹配的固定寬度的空間代替該條目。這樣做會在條目消失前後儲存布局並保持其他所有表徵圖位置不變。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.