1

私はそのナビゲーションコントローラーを持っており、このようにコードで1つのボタンを追加しています:

UIBarButtonItem *configButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"config.png"] style:UIBarButtonItemStyleBordered target:self action:@selector(showConfigWindow)]; 
self.navigationItem.leftBarButtonItem = configButton;

正常に動作していますが、アイコンは白ではなく黒です!!

私がこれを使用する場合:

UIBarButtonItem *configButton = [[UIBarButtonItem alloc] initWithTitle:@"Settings" style:UIBarButtonItemStyleBordered target:self action:@selector(showConfigWindow)];

テキストは白で正しく表示されます。

インターフェイスビルダーを介してアイコンを使用しているため、アイコンは問題ありません。アイコンは正しく表示されます。

4

1 に答える 1

0

UIBarButtonItem画像のアルファ値に従って画像をグレースケールでレンダリングします。そのため、画像が完全に不透明な場合、元の画像の色に関係なく、常に黒でレンダリングされますが、画像が透明な場合は、グレーの陰影がレンダリングされます。

完全に白または色でレンダリングするには、カスタム を作成する必要がありますUIBarButtonItem色付きの画像を持つ UIBarButtonItem を使用できますか? を参照してください。詳細については

于 2015-11-23T08:45:17.870 に答える