UIButtonをカスタムビューとして作成すると、他の多くのユーザーが同じ問題が発生しています。カスタムUIBarButtonItemとiOS7とのアライメント
基本的に、ボタンは左右に約10ピクセルです。カスタムビューなしで通常のBarButtonItemを使用すると、これは発生しません。
この投稿は、部分的なソリューションを提供する:ここでは UIBarButton With Custom View
は、私はUIButtonをサブクラス化して作成している私のコードである(他のポストで述べたように)
- (UIEdgeInsets)alignmentRectInsets {
UIEdgeInsets insets;
if ([self isLeftButton]) {
insets = UIEdgeInsetsMake(0, 9.0f, 0, 0);
}
else { // IF ITS A RIGHT BUTTON
insets = UIEdgeInsetsMake(0, 0, 0, 9.0f);
}
return insets;
}
- (BOOL)isLeftButton {
return self.frame.origin.x < (self.superview.frame.size.width/2);
}
これは素晴らしい作品が、私はポップときナビゲーションコントローラからのビューコントローラをこのメインビューに戻すと、ボタンはまだ約0.3秒間間違った位置に置かれ、正しい挿入図にスナップされます。
これは巨大な目障りなので、どうしてこのようにスナップして止めるのか分かりません。何かご意見は?ありがとう!
これは、UIEdegeInsetの変更よりも優れた解決策であると考えています。これにはタップ領域の問題はありません。 – Nick
非常に良い!これも私の問題を解決しました! – rockstarberlin
完璧なソリューション。もし私がそれを10回upvoteすることができます。 – kufi