Поскольку вы используете одну кнопку и меняете только ее изображение, есть два простых способа:
Проверьте название изображения кнопки, если оно DONE.PNG
, затем сделайте то, что требуется, и измените изображение в противном случае.
Имеется переменная, либо вы можете взять целое число (это поможет вам, если у вас будет еще большее количество изменений изображения на одной кнопке), чтобы отслеживать состояние кнопки / изображение.
Например, мы будем typedef buttonState
и проверим его на предмет подходящего случая.
В .h
файле
// Перед объявлением интерфейса ..
typedef enum
{
ButtonStateDone = 1,
ButtonStateSubmit,
//any other state that it may have.
} ButtonState
// в объявлении интерфейса ..
ButtonState buttonState;
// это переменная уровня класса, которую мы будем использовать для отслеживания состояния кнопки.
В .m
файле
Изначально установите buttonState, как вы показываете его при первом просмотре. предположим, кнопка показывает DONE.PNG
итак buttonState = ButtonStateDone;
Теперь, в действии кнопки вы измените это
if(buttonState == ButtonStateDone)
{
//do something and change button state.
}
if(buttonState == ButtonStateSubmit)
{
//do something and change button state.
}
Здесь я использовал typedef
, это полезно, если вам нужно иметь более 2 состояний для кнопки, иначе вы можете просто использовать переменную BOOL
.