Пользовательский UITableViewCell с центрированным UISlider и двумя изображениями - PullRequest
4 голосов
/ 31 июля 2011

Я бы хотел программно создать пользовательский UITableViewCell с UISlider в центре и двумя изображениями с обоих концов. Для примера посмотрите настройку Яркости на любом устройстве iOS. Он имеет UISlider в центре и два похожих на солнце изображения на каждом конце (одно маленькое и одно большое). Вот в основном то, о чем я говорю:

enter image description here

Какой самый простой способ программно создать этот пользовательский UITableViewCell?

Ура!

Ответы [ 2 ]

14 голосов
/ 02 августа 2011

Самый простой способ добавить изображения на любом конце UISlider - это использовать setMinimumTrackImage:forState: и setMaximumTrackImage:forState:.

. Чтобы добавить UISlider в UITableViewCell, просто добавьте его как подпредставление ячейки.contentView и установите ползунки frame (или bounds и center) и autoresizingMask в зависимости от ситуации.

    [cell.contentView addSubview:slider];
    slider.bounds = CGRectMake(0, 0, cell.contentView.bounds.size.width - 10, slider.bounds.size.height);
    slider.center = CGPointMake(CGRectGetMidX(cell.contentView.bounds), CGRectGetMidY(cell.contentView.bounds));
    slider.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin;

Игнорируйте ячейки imageView, textLabel и detailTextLabel свойства;если вы никогда не получите доступ к этим свойствам, ячейка может даже не удосужиться создать соответствующие представления.

0 голосов
/ 31 июля 2011

Вам нужно будет создать подкласс UITableViewCell, а затем добавить UISlider подкласс в ячейку contentView. Наконец вам придется переопределить это на UISlider:

-drawRect() 

Чтобы включить эти 2 изображения.

...