2014-12-14 3 views
2

У меня есть два вида стола одинаковой высоты и ширины в UIView. Я пытаюсь разместить разделитель (UIView шириной 1px) между таблицами, как показано на рисунке, но выглядит как 2px wide. Я попытался разместить разделитель внутри .xib и программно, но я получаю ту же проблему. Я хочу получить делитель с толщиной, такой же, как толщина разделителя ячейки таблицы.UIView Width issue

UIView *vLine = [[UIView alloc]initWithFrame:CGRectMake(300,0,1,500)]; 
vLine.backgroundColor = [UIColor colorWithRed:207.0f/255.0f green:207.0f/255.0f blue:207.0f/255.0f alpha:1.0]; 
[self.view addSubview:vLine]; 

enter image description here

+0

Попробуйте с понижением шириной параметров: CGRectMake (300,0,0.7,500) и т.д. – Mrunal

ответ

1

Для сетчатки устройства, 1 балл будет 2рх. Следовательно, используйте 0,5 в качестве ширины для устройств сетчатки и 1 для устройств, не содержащих сетчатки.

if(is_retina) { 
    [[UIView alloc]initWithFrame:CGRectMake(300,0,0.5,500)]; 
} else { 
    [[UIView alloc]initWithFrame:CGRectMake(300,0,1,500)]  
} 
+0

Одна вещь, которую я бы, вероятно, разделил, это настройка 'is_retina' в противном случае +1 – Popeye

-1

Высота встроенного разделителя таблиц составляет 0,5 пикселя. Просто отрегулируйте свою раму до:

UIView *vLine = [[UIView alloc]initWithFrame:CGRectMake(300.0f,0.0f,0.5f,500.0f)]; 
+0

Почему этот ответ был downvoted? Другие ответы здесь о масштабах экрана неверны, кадр UIView задан в точках, а не в пикселях. Точки корректируют масштаб экрана в пикселях при визуализации. –

0

Попробуйте установить изображение с рисунком шириной 1px, содержащим 0,5 пикселя четкого цвета и другие 0.5px с цветом разделителя.

Образец образца рисунка приведен ниже.

UIView *vLine = [[UIView alloc]initWithFrame:CGRectMake(300,0,1,500)]; 
    vLine.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"myPatternImage.png"]]; 

Здесь Ваш образец изображение должно быть шириной 1px, содержащей 0,5 пикселей ясного цвета и другие 0.5px с цветом сепаратора в обычном экране. Попытка ITH с изображением, представленным ниже [ enter image description here ]

+1

Не уверен, что я полностью понимаю, о чем вы говорите. Установить образ изображения, что? – Popeye

+0

Я поставил изображение между скобками []. поскольку размер 2 x 2 не отображается, но вы можете сохранить его, щелкнув правой кнопкой мыши. –

2

Попробуйте это, так как его более надежные:.

CGFloat screenScale = [[UIScreen mainScreen] scale]; 
UIView *vLine = [[UIView alloc] initWithFrame:CGRectMake(300, 0, 1/screenScale, 500)];