2013-03-11 2 views
1

Я хочу добавить изображение в качестве кнопки, и когда он щелкнут, он должен открыть новый контроллер представления ... Кто-нибудь знает, как это сделать?Как добавить изображение в качестве кнопки в объективе c?

Я создал кнопку и добавил изображение, но это не приятно, потому что, когда я нажимаю на изображение, он оживляет квадрат вокруг изображения, чего я не хочу. Это то, что я сделал.

- (void)setTutorialButtonImage 
{ 
    [self.tutorialButton setImage:[UIImage imageNamed:@"app_logo.png"] forState:UIControlStateNormal]; 
} 

знает любой, как это сделать ... просто изображение, а когда я нажимаю на него начать новый контроллер

+0

Это так, как вы сделали ... Как была кнопка представлена? Вы установили его как UIButtonTypeCUstom? – CainaSouza

+0

вы можете просто поместить изображение с пустой кнопкой над ним – Fonix

+0

просто сделайте UIButton с пользовательским стилем, настройте настройкиImageWhenHighlighted to NO и, возможно, используйте touch down control event вместо того, чтобы прикоснуться – iiFreeman

ответ

2

Вы можете отключить подсветку эффекта, используя

self.tutorialButton.adjustsImageWhenHighlighted = NO; 
0

Также попробуйте установить один и тот же образ для выбранных и выделенных состояний тоже

[button setBackgroundImage:[UIImage imageNamed:@"app_logo.png"] forState: UIControlStateHighlighted]; 
[button setBackgroundImage:[UIImage imageNamed:@"app_logo.png"] forState: UIControlStateSelected]; 

Для лучшего внешнего вида можно применить врезки на изображение с помощью

- (UIImage *)resizableImageWithCapInsets:(UIEdgeInsets)capInsets 
0
UIButton *sampleButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
[sampleButton setFrame:CGRectMake(x, y, width, height)]; 
[sampleButton setBackgroundImage:[[UIImage imageNamed:@"image.png"] forState:UIControlStateNormal]; 
[sampleButton addTarget:self action:@selector(buttonPressed) forControlEvents:UIControlEventTouchUpInside]; 
[self.view addSubview:sampleButton]; 
Смежные вопросы