2010-05-24 47 views
0

是否有可能使TabBar中的圖標和/或「更多導航控制器」的顏色不是灰色和黑色?我嘗試改變使用UITabBarItem的設置爲視圖控制器的圖標的顏色TabBar /「更多視圖控制器」 - 可能具有黑色以外顏色的圖標?

- (id)initWithTitle:(NSString *)title image:(UIImage *)image tag:(NSInteger)tag 

方法。

我的客戶認爲,該接口是太黑暗,希望與一些五顏六色的圖標亮起來......

謝謝!

回答

1

都能跟得上:(上的TabBar或工具欄的按鈕與alpha通道繪製所以他們沒有顏色雖然巴紐了。

所以,你也可以繼承使用TabBar或工具欄和實現自己的按鈕繪製整個酒吧

+0

這幾乎是我的預期。謝謝! – Malakim 2010-05-24 12:33:10

0

另一個想法是讓另一個XIB文件充當各種工具欄或標籤欄,可以使它看起來完全一樣,甚至可以像工具欄或標籤欄一樣在視圖中生成動畫。然後,您可以通過應用程序委託或通過單例傳遞全局變量,以便在必要時與其他活動視圖共享。

將子視圖添加到視圖中的一個很好的示例是在此處找到的「隱藏的抽屜」示例代碼(僅更改屏幕尺寸是因爲此版本在頂部彈出視圖,而您希望它位於底部)。

http://cocoawithlove.com/2009/05/intercepting-status-bar-touches-on.html

如果你不能弄清楚,讓我知道,我已經在家裏,我可以在這裏發佈了爲你工作的代碼。

羅布

5

即將有點晚了這一點,但我的方法來改變更多的控制圖標是(和不知道蘋果會不會批准),請執行以下操作:

id moreNavController = [tabs.moreNavigationController.viewControllers objectAtIndex:0]; 
if ([moreNavController respondsToSelector(@selector(view)]) { 
    UITableView *t = (UITableView*)[moreNavController view]; 
    [t setDataSource:self]; 
} 

然後我實施UITableViewDatasourceProtocol方法

-(NSInteger)tableView:(UITableView*)tableView numberOfRowsInSection:(NSInteger)section{ 
    id o =[tabs.moreNavigationController.viewControllers objectAtIndex:0]; 
    return [o tableView:tableView numberOfRowsInSection:section]; //let the existing data source actually return the number of rows 
} 

-(UITableViewCell*)tableView:(UITableView*)tableView cellForRowAtIndexPath:(NSIndexPath*)indexPath { 
/* configure cell as normal with what ever image in the imageView property*/ 
    cell.imageView.image = <someimageobj> 
} 
相關問題