Как настроить кнопку UISwitch в iphone?

Я создал UISwitch, используя этот код …

UISwitch *switch = [[UISwitch alloc]initWithFrame:CGRectMake(110, 230, 60, 60)]; [window addSubview:switchView]; [switchView release]; 

Созданная кнопка будет …

введите описание изображения здесь

Свойства по умолчанию:

  1. Он содержит состояния « ON » и « OFF »
  2. Кнопка ВЫКЛ белая, кнопка ВКЛ находится в синем цвете

Я хочу создать настраиваемый переключатель, чтобы изменить цвет фона и текст в коммутаторе. Является ли это возможным? Пожалуйста, объясните подробно.

Заранее спасибо,

Rajkanth

Вы не можете изменять контроль UISwitch до тех пор, пока вы не напишете собственный контроль,

Но лучшим способом до сих пор вы можете использовать UISegmentControl и обрабатывать событие на нем, чтобы переключать изображения on.png и off.png.

 UISegmentedControl* switchView=[[UISegmentedControl alloc] initWithItems:[[[NSMutableArray alloc] initWithObjects:@"On",@"Off",nil] autorelease]]; [switchView setFrame:CGRectMake(20,365,140,28)]; switchView.selectedSegmentIndex=0; switchView.segmentedControlStyle=UISegmentedControlStyleBar; [switchView setImage:[UIImage imageNamed:@"onSelected.png"] forSegmentAtIndex:0]; [switchView setImage:[UIImage imageNamed:@"off.png"] forSegmentAtIndex:1]; [switchView addTarget:self action:@selector(checkOnOffState:) forControlEvents:UIControlEventValueChanged]; self.navigationItem.titleView=switchView; 

и напишите код метода checkOnOffState,

 -(IBAction)checkOnOffState:(id)sender{ UISegmentedControl* tempSeg=(UISegmentedControl *)sender; if(tempSeg.selectedSegmentIndex==0){ [tempSeg setImage:[UIImage imageNamed:@"onSelected.png"] forSegmentAtIndex:0]; [tempSeg setImage:[UIImage imageNamed:@"off.png"] forSegmentAtIndex:1]; } else{ [tempSeg setImage:[UIImage imageNamed:@"on.png"] forSegmentAtIndex:0]; [tempSeg setImage:[UIImage imageNamed:@"offSelected.png"] forSegmentAtIndex:1]; } } 

Я использовал это решение: UICustomSwitch : он настраивает UISlider и устанавливает максимальную валину 1.

Вы можете изменить изображения своего переключателя, правый / левый текст и использовать его с уникальным цветом на фоне (если вы не хотите использовать изображения).

Единственное изменение, которое я сделал, это имя: пользовательский интерфейс зарезервирован для Apple Classe, поэтому я изменил его для себя.

  • Как эффективно анализировать CSV-файл в Perl?
  • Ограниченный выбор в JTextField / JTextComponent?
  • Усечение длинных строк с помощью CSS: возможно?
  • Извлечение текста OpenCV
  • Хороший цвет текста переднего плана для заданного цвета фона
  • Масштабировать текст в режиме просмотра?
  • Тайм-аут в async / wait
  • Могу ли я обернуть каждую строку многострочного текста в промежутке?
  • Обосновать последнюю строку div?
  • Можно ли изменить цвет текста в строке на несколько цветов в Java?
  • Подпиксельный сглаженный текст в элементе canvasа HTML5
  • Interesting Posts

    Какие символы разрешены в имени classа C #?

    Обход DNS-параметров маршрутизатора

    Как я могу манипулировать значимостью поиска полнотекстового поиска MySQL, чтобы сделать одно поле более «ценным», чем другое?

    Как использовать фильтр в controllerе?

    Backticks против брекетов в Bash

    Установить ширину при выборе windows выбора

    Преобразование Xml в таблицу SQL Server

    Получение текущего пользователя Windows в веб-приложении Java EE для целей единого входа

    Как я могу исправить поисковую систему по умолчанию в Chromium на Linux Mint 11?

    Android ListView текущее местоположение прокрутки Y пикселей

    OleDB и смешанные типы данных Excel: отсутствующие данные

    Как динамически изменять содержимое в iframe с помощью jquery?

    Параметры Angularjs ng с использованием номера для модели не выбирают начальное значение

    Получение разницы между двумя наборами

    Действительно ли дефрагментация помогает?

    Давайте будем гением компьютера.