2012-04-01 14 views
3

MonoTouch.Dialogの3月31日のリリースでは、ハードコードされた色を持つ新しいコンテナオブジェクトがあるので、今度はUISearchBarの色を設定することはできません。MonoTouch.Dialog:UISearchBar Color

UISearchBarの色を変更する簡単な方法はありますか?回避策として

、私はUISearchBarは、新しいクラスSearchBarBackgroundViewに最後に追加されたアイテムであることを知って(これを使用します。これは、悪い機能回帰のように聞こえる

 SearchBarBackgroundView sb = TableView.TableHeaderView as SearchBarBackgroundView; 
     if (sb != null) 
     { 
      try 
      { 
       if (sb.Subviews.Count() > 1) 
       { 
        UISearchBar bar = sb.Subviews [sb.Subviews.Count() - 1] as UISearchBar; 
        if (bar != null) 
        { 
         bar.BackgroundColor = Settings.AppTintColor; 
         bar.TintColor = Settings.AppTintColor; 
        } 
       } 
      } 
      catch (Exception e) 
      { 
       ExceptionPublisher.Pub (e, ""); 
      } 
     } 

答えて

2

IMOの答えではありません回避策については、最善の方法があります:以前のリビジョンを使用しますが、これがいつ/なぜ発生したのかを発見し、MonoTouchの次のリリースで他の開発者にこの急変を強制しないことを確認してください。

対処する最良の方法それらはMonoTouch.Dialogアセンブリが動作しているのでそれが発生したリビジョンを追跡することです。 historyがgithubから表示され、問題の原因となったエントリにコメントすることができます(例:one)。は候補と思われます。

したがって、このバージョンの前のリビジョンが機能している場合は、その問題についてのコメント(ページの一番下)を追加します。リポジトリに従う人は誰でも電子メールを受け取ることができます。

UPDATE:改ざんの変更を導入したパッチが元に戻されました。