Я хочу создать UIBarButtonItem с пользовательским изображением, но я не хочу, чтобы граница, которую добавляет iPhone, поскольку у моего изображения есть специальная рамка.
Это то же самое, что кнопка «назад», но кнопка «вперед».
Это приложение для проекта inHouse, поэтому мне все равно, отклонит ли Apple его, одобрит ли он или понравится: -)
Если я использую свойство initWithCustomView: v объекта UIBarButtonItem, я могу сделать это:
UIImage *image = [UIImage imageNamed:@"right.png"];
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
[button setBackgroundImage: [image stretchableImageWithLeftCapWidth:7.0 topCapHeight:0.0] forState:UIControlStateNormal];
[button setBackgroundImage: [[UIImage imageNamed: @"right_clicked.png"] stretchableImageWithLeftCapWidth:7.0 topCapHeight:0.0] forState:UIControlStateHighlighted];
button.frame= CGRectMake(0.0, 0.0, image.size.width, image.size.height);
[button addTarget:self action:@selector(AcceptData) forControlEvents:UIControlEventTouchUpInside];
UIView *v=[[UIView alloc] initWithFrame:CGRectMake(0.0, 0.0, image.size.width, image.size.height) ];
[v addSubview:button];
UIBarButtonItem *forward = [[UIBarButtonItem alloc] initWithCustomView:v];
self.navigationItem.rightBarButtonItem= forward;
[v release];
[image release];
Это работает, но если мне придется повторить этот процесс в 10 видах, это не СУХОЙ.
Полагаю, мне нужно подкласс, но что?
спасибо,
С уважением,