Подтвердить что ты не робот

Кнопка радио в приложении iPhone

Мне нужно добавить переключатели в приложение для iPhone. Для этого у меня есть изображение с переключателем круглой формы. Могу ли я добавить это изображение в качестве подзаголовка? и могу ли я добавить событие Touchupinside в UIImage?

4b9b3361

Ответ 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];

 }

}

Ответ 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. Прикрепленные скриншоты для этого элемента управления. enter image description here