Tabbar /「More View Controller」 - 黒以外の色のアイコンを持つことができますか?
-
04-10-2019 - |
質問
タブバーにアイコンや「より多くのナビゲーションコントローラー」をグレーとブラック以外の色にすることは可能ですか? uitabbaritem'sを使用してビューコントローラー用に設定したアイコンの色を変更しようとしました
- (id)initWithTitle:(NSString *)title image:(UIImage *)image tag:(NSInteger)tag
方法。
私のクライアントは、インターフェイスが暗すぎて、いくつかのカラフルなアイコンで明るくしたいと考えています...
ありがとう!
解決
いいえ:( Tabbarまたはツールバーのボタンは、.pngがありますが、色がないため、Alphaチャネルで描かれています。
そのため、TabbarまたはToolbarをサブクラス化して、バー全体を描く独自のボタンを実装できます。
他のヒント
これに少し遅れて来ますが、より多くのコントローラーアイコンを変更するための私のアプローチは、Appleがそれを承認するかどうかはわかりません)でした。
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>
}
別のアイデアは、ある種のツールバーまたはタブバーとして機能する別のXIBファイルを用意することです。まったく同じように見えるようにし、ツールバーやタブバーのようにアニメーション化することさえできます。その後、グローバル変数をアプリデリゲートまたはシングルトンを介して渡して、必要に応じて他のアクティブビューと共有できます。
ビューにサブビューを追加する良い例は、ここにある「隠された引き出し」の例コードです(このバージョンが上部にビューをポップするので、画面の寸法を変更するだけですが、下部に必要です)。
http://cocoawithlove.com/2009/05/intercepting-status-bar-touches-on.html
あなたがそれを理解できないなら、私に知らせてください、そして私はあなたのためにここに投稿できるという自宅で働くコードを持っています。
ロブ