2011-08-02 9 views
0

昨日、何か面白いことがありました。基本的に、tabbarcontrollerでどのタブが選択されているかに基づいて、ツールバーにUIBarButtonItemを追加します。たとえば、タブ2に、私はこのようにそれを追加します。同様にiOSシミュレータがiPad 2、UIBarButtonItemと矛盾しています

NSMutableArray *barItems = [[self.MainToolbar items] mutableCopy]; 
      if (_sortButton == nil) { 
       _sortButton = [[UIBarButtonItem alloc] initWithTitle:@"Sort" style:UIBarButtonItemStyleBordered target:self action:@selector(sortButtonPressed:)]; 
      } 
      [barItems insertObject:_sortButton atIndex:0]; 
      [self.MainToolbar setItems:barItems]; 
      [barItems release]; 

、私はボタンを外したときに、私はこれを実行します。シミュレータ上でそう

if (_sortButton != nil) { 
      self.SortButton = nil; 
      NSMutableArray *barItems = [[self.MainToolbar items] mutableCopy]; 
      [barItems removeObjectAtIndex:0]; 
      [self.MainToolbar setItems:barItems]; 
      [barItems release]; 
     } 

を、それが正常に動作します。私は、タブを切り替えることができます、アプリをナビゲートし、私はボタンで問題を見ていない。また、この機能を計測器でテストしたところ、明らかな問題は見られませんでした。その後、実際のiPad 2に貼り付けたときに、最初にタブをクリックすると、それがうまく表示された後、別のタブをクリックしてから、タブ2をクリックしてボタンがちょっと(ちょうど始めにツールバーの左側に配置されています)次に、クリックして戻ってくると、もう一度右に移動します。なぜそれがまだ起こっているのか分かりませんが、私はまた、デバイス上でなぜそれが起こったのか不明であり、シミュレータではそうではありません。実際のハードウェア上で常にテストする必要があることは間違いなく知っていますが、これが他の人に知られている問題であるかどうかは疑問です。ありがとう!

答えて

0

私も同様の問題がありました。

私の場合、.pngファイルは何らかの理由でプロジェクトとプロジェクトの作業ディレクトリから消去されました。 これはもはや、バンドルリソースのコピーには含まれていませんでした。

奇妙なことですが、明らかにそれはまだシミュレータに残っていました。私の場合、それはまだデバッグデバイス上にあった。しかし、アドホックな配布のためのbouldeをビルドするとき、それは入っていませんでした。その結果、フル・ボタン(ナビゲーション・バーのbarボタン項目)は表示されませんでした。ユーザーは、関連するアクションを請求することができませんでした。

最初に私はシミュレータからアプリを消去しました。私は両方を試して、シミュレータのguiとファイルシステム/ Users/Library/Application Support/iPhone Simulator/5.0/Applications /(app id)/ ...から消去しました。どちらの場合も、simulatoreでアプリケーションを実行すると、未使用の.pngファイルと、xcodeプロジェクトから意図的に削除されたその他のファイルが再インストールされました。

しかし、最終的な解決策は、pngファイルをxcodeプロジェクトに再度組み込み、関連するすべてのターゲットに割り当てることでした。私の場合は、グラフィックを変更しようとしていたので、古いファイルの代わりに新しいファイルを含めました。しかし、私はこの詳細があまり重要ではないと確信しています。

ショートバージョン: 1.まだあなたのpngファイルがプロジェクトの一部である場合は、削除してください。保存するだけで、プロジェクトフォルダからもistを削除できます。 2.プロジェクトにpngファイルを再度インクルードします。 3.ビルドを作成し、空のデバイスでそれを試してください。

関連する問題