Yatay solukluğu, özel sol ve sağ UINavigationBar öğelerinin solunda ve sağında nasıl kaldırabilirim? IOS'un varsayılan olarak ayarladığı 10 nokta dolgu görünüyor.Varsayılan yatay dolgu olmadan gezinti çubuğuna özel bir görünüm tabanlı UIBarButtonItem yerleştirme
Sol ve sağ gezinme çubuğu düğmelerini özelleştiriyorum (kendi backButtonItem'i ayarladığım için vazgeçtim, bu yüzden sadece leftBarButtonItem'i kullanıyorum).
Her iki durumda da (sol veya sağ), bu özel düğmelere basmak, Apple'ın solBarButtonItem öğesinin solunda ve sağBarButtonItem öğesinin sağında bir miktar dolguyu koruduğunu gösterir; ne kadar geniş olursa olsun, UIButton'un özel arka plan ve görüntü özelliklerini, özel görünümü olarak sol/sağ çubuk düğme öğesine yerleştiririm.
UIBarButtonItems'in erişemediğim bir "çerçeve" bulunmadığından, onları UIViews gibi normal görünümlerinde konumlandıramıyorum.
Bu varsayılan doldurmanın nasıl kaldırılacağı konusunda öneriniz var mı? Sıfır genişliğini azaltmaya çalıştığım biti görmek için ekran görüntüsüne bakın. Ekran görüntüsünde, artı simgesi sağa kaydırıldı çünkü ben ona bir özet verdim; ama aynı zamanda, bu girintiyi de kullanması beklenen vurgulanmış arka plan resmi, sağ tarafında kırpılıyor).
Bkz görüntü de :
- (UIBarButtonItem *)customAddButtonItemWithTarget:(id)target action:(SEL)action {
UIButton *customButtonView = [UIButton buttonWithType:UIButtonTypeCustom];
customButtonView.frame = CGRectMake(0.0f, 0.0f, 45.0f, 44.0f);
[customButtonView setBackgroundImage:
[UIImage imageNamed:@"bgNavBarButton-OutsideRight-Normal.png"]
forState:UIControlStateNormal];
[customButtonView setBackgroundImage:
[UIImage imageNamed:@"bgNavBarButton-OutsideRight-Highlighted.png"]
forState:UIControlStateHighlighted];
[customButtonView setImage:
[UIImage imageNamed:@"bgNavBarButton-Add-Normal.png"]
forState:UIControlStateNormal];
[customButtonView setImage:
[UIImage imageNamed:@"bgNavBarButton-Add-Highlighted.png"]
forState:UIControlStateHighlighted];
[customButtonView addTarget:target action:action
forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *customButtonItem = [[[UIBarButtonItem alloc]
initWithCustomView:customButtonView] autorelease];
[customButtonView setImageEdgeInsets:UIEdgeInsetsMake(0.0f, 10.0f, 0.0f, 0.0f)];
//customButtonItem.imageInsets = UIEdgeInsetsMake(0.0f, 10.0f, 0.0f, 0.0f);
return customButtonItem;
}
+1: Ben bu sorunu vardı ve bir dizi şey denedim ... insets dahil olmak üzere, ve sadece x pozisyonunda -10 görüntü yapma ve vb.şansı yok küçük bir dolguyu tuttum ve redid Görüntü daha uygun hale getirmek için. iyi şanslar. –