0

現在、UINavigationController をサブクラス化することは想定されていないため、アプリケーション全体で次のコードを繰り返し使用しています (間違っている場合は修正してください)。

var galleryNavigation = new UINavigationController(galleryDialog);

galleryNavigation.NavigationBar.TintColor = UIColor.FromRGB (33, 114, 131);
galleryNavigation.NavigationBar.Alpha = 0.7f;
galleryNavigation.NavigationBar.Translucent = true;

これらのスタイル (TintColor、Alpha など) を一度定義して、再利用したいと考えています。どうすればこれを達成できますか?

4

1 に答える 1

1

AppDelegateでメソッドを作成したり、共有クラスでメソッドを作成したりするよりも、いくつかのプロパティを設定したい場合は、次のように各ViewControllerからメソッドを呼び出します。

-(void)setNavigation:(UIViewController*)vc
{
   //set properties here

}

それ以外の場合、適切なオプションよりも多くのカスタマイズが必要な場合は、UINavigationBarのサブクラスに各ViewControllerで継承させることです。

// Get our custom nav bar
    MyNavigationBar* customNavigationBar =  (MyNavigationBar*)self.navigationController.navigationBar;    
    // Set the nav bar's properties as you want like i have set its background image as
    [customNavigationBar setBackgroundWith:[UIImage imageNamed:ImgNavBarBackground]];
于 2012-10-15T07:17:43.097 に答える