0

UINavigationbarのカスタム戻るボタンを作成しようとしています。

画像の設定に使用できることを知っていbackButtonBackgroundImageForState:barMetrics:ます。

私の問題は、画像ファイルを使用する必要がないことです。コードで戻るボタンを描画したいと思います。

私の質問は、UIViewをサブクラス化し、drawrecをオーバーライドして、戻るボタンを描画し、そのUIViewを画像として使用できるかどうかですbackButtonBackgroundImageForState:barMetrics

私はそれが次のようになると思っています:

UIImage * backButtonImage = // somehow get image from my subclassed UIView;

backButtonImage = [backButtonImage stretchableImageWithLeftCapWidth: 15.0 topCapHeight: 30.0];

[[UIBarButtonItem appearance] setBackButtonBackgroundImage: backButtonImage forState: UIControlStateNormal barMetrics: UIBarMetricsDefault];

これは、これを実行するための最良の方法でさえありますか?それとも、それを吸い上げてフォトショップで画像を作成する必要がありますか?

4

1 に答える 1

0

UIGraphicsBeginImageContextWithOptionsのサブクラスを作成してUIViewオーバーライドすることなく、を使用してビットマップイメージコンテキストを作成できますdrawRect:

UIGraphicsBeginImageContextWithOptions(CGSizeMake(80, 30), NO, 0);
// drawing code here
// Use UIKit functions and objects
// or use CoreGraphics functions on UIGraphicsGetCurrentContext()
UIImage *image = UIGraphicsGetImageFromCurrentContext();
UIGraphicsEndImageContext();
于 2012-10-12T18:39:12.860 に答える