0

したがってUIToolbar、カスタムの高さを持つ があります (これは、 をオーバーライドして設定します。ツールバーのより高い位置に配置したいUIToolbarのですが、次のようにオーバーライドして行います。-sizeThatFitsUIBarButtonItems-layoutSuviews

-(void)layoutSubviews
{
    [super layoutSubviews];
    for(UIBarButtonItem* item in self.items)
    {

        UIView *view;
        @try {
            view = [item valueForKey:@"view"];
        }
        @catch (NSException *exception) {    NSLog(@"%@", exception.reason);  }

        view.frame = CGRectMake(view.frame.origin.x, view.frame.origin.y, view.frame.size.width, view.frame.size.height-33);
        }
    }
}

これは、 で作成したバー ボタンには問題なく機能しますが、または-initWithBarButtonSystemItem:で作成したバー ボタンには影響しません。 -initWithCustomView:-initWithTitle:

で別のものを使用する必要[item valueForKey:@"view"]がありますか、それとも別の方法がありますか?

4

1 に答える 1

0

この質問に対する崇高な答えを見つけたことはありません。カスタムバーボタンアイテムにスイッチなどを追加することでニーズを解決しました。

于 2013-10-25T08:32:24.297 に答える