Мне нужно добавить переключатели в приложение для iPhone. Для этого у меня есть изображение с переключателем круглой формы. Могу ли я добавить это изображение в качестве подзаголовка? и могу ли я добавить событие Touchupinside в UIImage?
Кнопка радио в приложении iPhone
Ответ 1
Приложения iPhone не имеют переключателей. "Подобный iPhone" способ сделать это - либо с помощью представления сборщика, либо с помощью нескольких строк в сгруппированном представлении таблицы с аксессуаром проверки в выбранной строке.
Если по какой-то причине вы действительно ощущаете необходимость использовать радиокнопки, используйте UIButton с типом кнопки типа. Установите пустой круг в качестве изображения для "нормального" состояния управления и заполненного круга в качестве изображения для "выбранного" состояния.
Ответ 2
Попробуйте UISegmentedControl. Он ведет себя аналогично переключателям - представляет собой набор вариантов и позволяет пользователю выбрать 1.
Ответ 3
IBOutlet UIButton *checkboxButtonMale;
IBOutlet UIButton *checkboxButtonFmale;
checkboxButtonFmale.tag = 3;
checkboxButtonMale.tag = 2;
(IBAction)checkboxGenderChecked:(id)sender{
UIButton *selectedButton = (UIButton *)sender;
UIButton *toggledButton;
if (selectedButton.tag == 2 ) {
toggledButton = checkboxButtonFmale;
}
else {
toggledButton = checkboxButtonMale;
} [toggledButton setSelected:NO];
[sender setSelected:YES];
}
Ответ 4
Вы также можете создать UIWebView, загрузить в него HTML, который использует радиокнопки, а затем использовать методы делегата UIWebView, отслеживать значение радио.
Это своего рода взлом, но в некоторых случаях это именно то, что требуется.
Ответ 5
Вы можете использовать массив UIButton
s, а затем использовать класс GSRadioButtonSetController для обработки логики (по сути, можно выбрать одну кнопку). См. README на GitHub для использования образца.
Ответ 6
Вы можете попробовать использовать класс UIImageView, который просто обертывает UIImage внутри контейнера UIView. Он поддерживает прикосновенияBegan/Canceled событий, которые были бы подходящими, я думаю.
Вы также можете подумать, что вы не используете настоящую настройку радиокнопки, как вы описали, и вместо этого используете более похожий на iPhone подход - например, используя UITableView с ячейками, соответствующими вашим выборам радио, и чтобы переключать флажок/неконтролируемое прикосновением. См. Пример TouchCells на веб-сайте Apple iPhone для примера.
Ответ 7
Если у вас есть только опции "да" или "нет", используйте UISwitch.
Для нескольких типов используйте следующий код:
-(void)buttonPressed:(id)sender{
if([sender isSelectd])
//here change button image and set
[sender setSelected:NO];
}else{
//here change button image and set
[sender setSelected:YES];
}
помните, что при создании кнопки не забудьте установить для параметра SetSelected значение NO.
Ответ 8
В приложении iPhone нет никакого элемента управления RadioButton.
Хотя вы можете проверить ссылку folliwing на прием RadioButton.
Здесь мы разместили два изображения вместо RadioButtons.
http://www.developers-life.com/radio-buttons-in-iphone-application.html
Наслаждайтесь кодированием........
Ответ 9
Я сделал что-то вроде этого, и он работает:
- (IBAction)tickbuttonClicked:(id)sender
{
UIButton *selectedButton = sender;
UIImage *ticked = [UIImage imageNamed:@"tickbox_yes3.png"];
UIImage *unticked = [UIImage imageNamed:@"tickbox_no3.png"];
//untick active box
if((activetag>-1)&&(activetag!=[sender tag])){
UIButton *thisButton = (UIButton *)[self.view viewWithTag:activetag];
thisButton.backgroundColor = [UIColor colorWithPatternImage:unticked];
}
//tick sender
if ([sender tag]!=activetag)
{
selectedButton.backgroundColor = [UIColor colorWithPatternImage:ticked];
activetag=[sender tag];
[selectedButton setSelected:YES];
}
}
Ответ 10
см. эту ссылку, это будет действительно полезно для вас. https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/Button/Concepts/RadioButtons.html
Ответ 11
//определить свойство кнопки
Объявить Unchaked Image
- (void)viewDidLoad
{
[ButtonChaked setBackgroundImage:[UIImage imageNamed:@"UnChacked.png"] forState:UIControlStateNormal];
}
Изображение с записями.
- (IBAction)ButtonChaked:(id)sender
{
if (ButtonChaked.selected ==YES)
{
[ButtonChaked setBackgroundImage:[UIImage imageNamed:@"UnChacked.png"] forState:UIControlStateSelected];
ButtonChaked.selected =NO;
}
else
{
[ButtonChaked setBackgroundImage:[UIImage imageNamed:@"Chaked.png"] forState:UIControlStateNormal];
ButtonChaked.selected = YES;
}
}
который действительно использовал
Ответ 12
Я только что опубликовал элемент управления iOS Radio Button для Cocoapods pod "DLRadioButton"
, для документации и примеров перейдите на GitHub. Прикрепленные скриншоты для этого элемента управления.