Я пытаюсь сделать стандартный флажок для своего приложения для iPhone от a UIButton
с заголовком и изображением. Изображение кнопки изменяется между изображением "непроверенным" и "проверенным" изображением.
Сначала я пытался разделить на подклассы UIButton
но UIButton
имеет нет -init***
метод для использования в моем -init
метод.
Что лучший способ состоит в том, чтобы сделать это?
Заранее спасибо.
Подкласс UIButton
не нужен. По своей конструкции Objective-C предпочитает композицию, а не наследование.
UIButton
является подклассом UIControl
, который имеет свойство выбранное
. Это свойство можно использовать для включения/выключения флажка, точно так же, как и UISwitch
.
Вы можете прикрепить действие к нажатой кнопке внутри события и выполнить переключение, что-то вроде этого:
// when you setup your button, set an image for the selected and normal states
[myCheckBoxButton setImage:checkedImage forState:UIControlStateSelected];
[myCheckBoxButton setImage:nonCheckedImage forState:UIControlStateNormal];
- (void)myCheckboxToggle:(id)sender
{
myCheckboxButton.selected = !myCheckboxButton.selected; // toggle the selected property, just a simple BOOL
}
Также были проблемы с сортировкой ранее: мой случай был аккордеон и сортируемые внутри. Я не смог получить четкого ответа, но если посмотреть на какую-либо из реализаций дерева, они используют перетаскивание напрямую и не сортируются.
Основываясь на этом опыте - не очень точно я знаю - я бы согласился с акиллером и сказал: возьмите хороший плагин дерева вместо того, чтобы пытаться сделать это самостоятельно с сортируемым. jsTree достаточно хорош и должен делать работу - есть и другие, если по какой-то причине jsTree не соответствует вашим потребностям.
-121--3747395-Антиузоры - это обычные способы, которыми люди склонны программировать неправильно, или, по крайней мере, не такой хороший способ.
-121--667083-Пытались ли вы переопределить метод initWeyCoder, на тот случай, если он каким-то образом загружен с пера?