0

ツールバーを作成しました。ちょうどこのような:

    UIToolbar *toolbar=[[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, frame.size.width, toolBarHeight)];

    toolbar.autoresizingMask=UIViewAutoresizingFlexibleWidth;
    UIBarButtonItem *itemNull=[[[UIBarButtonItem alloc]   initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace target:nil action:nil] autorelease];
    UIBarButtonItem *item0=[[[UIBarButtonItem  alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemRewind target:self action:@selector(pre)] autorelease];
    UIBarButtonItem *item1=[[[UIBarButtonItem  alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFastForward target:self action:@selector(pre)] autorelease];
    UIBarButtonItem *item2=[[[UIBarButtonItem  alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAction target:self action:@selector(pre)] autorelease];
    UIBarButtonItem *item3=[[[UIBarButtonItem  alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemReply target:self action:@selector(pre)] 
        autorelease];
    UIBarButtonItem *item4=[[[UIBarButtonItem  alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemRefresh target:self action:@selector(pre)] autorelease];
    itemNull.width=frame.size.width-itemwidth*5;
    item0.width=itemwidth;
    item1.width=itemwidth;
    item3.width=itemwidth;
    item4.width=itemwidth;
    item2.width=itemwidth;

    [toolbar setItems:[NSArray arrayWithObjects: itemNull,item0,item1,item2,item3,item4, nil]];
    [self addSubview:toolbar];
    [toolbar release];

ビューに追加されます。しかし、ビューを回転させたときにアイテムがサインアウトしています。フレームをリセットせずに表示する方法を知りたいです。項目に autoresize のようなプロパティがありましたか?

4

1 に答える 1

0

組み込みの隠しツールバーがあります..

[self.navigationController setToolbarHidden:NO animated:YES]; // i hope its a navigation based application.

コードを変更する

UIBarButtonItem *itemNull=[[[UIBarButtonItem alloc]   initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace target:nil action:nil] autorelease];
UIBarButtonItem *item0=[[[UIBarButtonItem  alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemRewind target:self action:@selector(pre)] autorelease];
UIBarButtonItem *item1=[[[UIBarButtonItem  alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFastForward target:self action:@selector(pre)] autorelease];
UIBarButtonItem *item2=[[[UIBarButtonItem  alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAction target:self action:@selector(pre)] autorelease];
UIBarButtonItem *item3=[[[UIBarButtonItem  alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemReply target:self action:@selector(pre)] 
    autorelease];
UIBarButtonItem *item4=[[[UIBarButtonItem  alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemRefresh target:self action:@selector(pre)] autorelease];
[self.navigationController setToolbarHidden:NO animated:YES];
self.toolbarItems = [NSArray arrayWithObjects: itemNull, item0, item1, item2, item3, item4, nil];

それが役に立てば幸い。幸せなコーディング:)

于 2012-05-09T06:44:57.247 に答える