我一直在開發幾個小時的應用程序。自定義在.xib中保存的UIBarButton的文本樣式
我從模板製作主視圖細節應用程序。 AppDelegate.m didFinishLaunchingWithOptions允許我添加一些自定義的GUI代碼來改變導航欄之類的東西。所以我繼續前進,併爲主導航欄的背景設置了自定義背景,像這樣...
//custom navbar
UIImage *navigationBarBackground = [UIImage imageNamed:@"NavigationBarBackground.png"];
[[UINavigationBar appearance] setBackgroundImage:navigationBarBackground forBarMetrics:UIBarMetricsDefault];
太棒了!現在我的導航欄有自定義bgs!
現在在主視圖區域中,我在視圖的右上角有一個+按鈕,當您單擊它時,會打開一個窗口覆蓋其餘內容,但不是全屏幕,只是一個地方輸入一些信息,如表單。我用.xib創建了一個新類。我從IB設計了新窗口。
但是,當新窗口彈出,導航欄不是我的自定義圖像,它是默認......
所以我花了幾個小時試圖找到一種方法,也改變這一點。最後,我想出了一個將自定義類添加到UIToolbar的方法,通過創建一個新的類來創建應用於其中的navBar,並將某個圖像加載到其背景中。大!對於我的.m文件看起來是這樣的:
#import "customToolbar.h" //for your information the .h for this is a blank { }
@implementation customToolbar
- (void)drawRect:(CGRect)rect
{
CGContextRef c = UIGraphicsGetCurrentContext();
UIImage *image = [UIImage imageNamed:@"addBusKid-NavBar.png"];
CGContextDrawImage(c, rect, image.CGImage);
}
@end
如此美妙,這一類的,我可以申請任何背景圖片在界面生成器的導航欄。
...
現在,我的導航條都好看,我覺得是時候改變一些文字!於是,我開始回到我的AppDelegate.m
我添加了一些代碼來改變所有的導航欄文本的默認文本樣式...
// Customize the title text for *all* UINavigationBars
[[UINavigationBar appearance] setTitleTextAttributes:
[NSDictionary dictionaryWithObjectsAndKeys:
[UIColor colorWithRed:255.0/255.0 green:255.0/255.0 blue:255.0/255.0 alpha:1.0],
UITextAttributeTextColor,
[UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.8],
UITextAttributeTextShadowColor,
[NSValue valueWithUIOffset:UIOffsetMake(0, -1)],
UITextAttributeTextShadowOffset,
[UIFont fontWithName:@"Arial-Bold" size:0.0],
UITextAttributeFont,
nil]];
大,這改變了我的導航欄文本樣式.. 。但等等,當我打開使用.xib創建的彈出窗口時,就像在AppDelegate中添加navigationBar樣式時一樣,它不會影響其外觀。所以,無論我的外觀協議,他們不會影響我的自定義類xibs外觀...
嗯,我試圖做一個自定義的類,就像我做的導航欄,我可以申請給它一些風格。但我無法做到這一點(如果你知道請告訴我)...
而我去了3 +小時尋找某種方式來設置這個.xib文件中的文本樣式!我放入AppDelegate的東西都沒有觸及它!
所以,徹底向你解釋了我自己。我的問題是這樣的:
如何設置在界面生成器中創建的UIBarButton文本。
您是否知道我可以編寫的自定義類,然後可以將其應用於對象,就像我爲此導航欄做的一樣,或者有一些方法可以根據什麼添加此.xibs UI元素以進行風格化我在AppDelegate中聲明。請建議我。我做了功課。
順便說一句,這是我的第一篇文章!我已經感到在家了!感謝您的支持,我希望我也可以幫助別人。
謝謝主席先生。你太棒了! – user1927446
不用擔心。很高興幫助。 – Sarreph