2012-01-25 3 views
2

В настоящее время я работаю над небольшим приложением, в котором у меня есть несколько UIButton s. У каждого из них есть UIImageView под ним. В настоящий момент я связываю каждый UIButton с каждым UIImageView (все они называются через IBOutlet - UIButton и UIImageView). Когда я нажимаю кнопку, основное изображение меняется. Я хотел бы знать, возможно ли (и как) создать кнопку, которая содержит базовый UIImage (а не изображение или фоновое изображение UIButton), своего рода новый объект.IOS Custom UIButton

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

Я пробовал несколько решений (конечно, неполное), и я начинаю отчаиваться.

Мое текущее решение является функциональным, но я нахожу его не особенно элегантным.

+0

Я попытался помочь с грамматикой и написанием без изменения вашего предполагаемого значения. Пожалуйста, отредактируйте, если вы чувствуете, что я что-то испортил! – DougW

ответ

0

UIButton имеет как image, так и backgroundImage как свои свойства.

Чтобы добиться того, что вы ищете, я бы на самом деле рекомендую вам придерживаться только UIButton, а затем с помощью contentInset позиционировать image над backgroundImage поэтому он создает эффект, я думаю, что вы ищете. Это должно быть довольно просто в построителе интерфейса ...

0

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

Это даст вам то, что вы хотите, но следует избегать затрат ...

Придерживайтесь UIButton ..

Я считаю, что даже в калькуляторном приложении это только UIButtons и ничего больше. они были закодированы, чтобы были мгновенно выбраны. Вот почему вы видите, что они меняют подсветку для небольшой части, и каждая кнопка кодируется выполнять конкретные фу nction (+ -/равны.)

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

, то здесь ответ.

Сделать UIbutton. Создайте ImageView, а затем вызовите [theButton.view addSubview: ImageView];

Так как оба UIButton и UIImage вид наследует от UIView .. Вы можете добавить столько подвидов в them..that внутри них

+0

Это интересный пик для изучения, я попробую ... спасибо! Если у вас есть другие идеи ... –

0

Если я понял ваш вопрос правильно, то вы можете попробовать следующее:

UIButton * button = [UIButton alloc] init]; [кнопка setImage: buttonImage forState: UIControlStateNormal]; когда кнопка не нажата

[кнопка setImage: buttonImage forState: UIControlStateSelected]; при нажатии кнопки

[кнопка выпуска];