2013-04-30 1 views
0

Я добавил под просмотр под названием LayoutView в свой диспетчер view. LayoutView затем добавили подвид под названием SectionView по данному коду:Изменения позиции UIView в отображении сетчатки

MSSectionView *sec1; 
      sec1 = [[MSSectionView alloc]initWithFrame:CGRectMake(72, 95,172,145)]; 

      sec1.tag = 1; 
      sec1.delegate = self; 
      //sec1.backgroundColor = [UIColor clearColor]; 
      //sec1.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleTopMargin; 
      [self addSubview:sec1]; 

В моем обычном Iphone он будет отображаться как:

normal iphone

Но в моей сетчатке отображения будет отображаться как:

enter image description here

Я пробовал авторезистирующую маску. но тот же результат. Как я могу зафиксировать положение сечения?

+0

какое устройство это? т.е. iPhone 4 или 5 – Tendulkar

+0

второе изображение - это iphone 5 – manujmv

+0

Сделайте это, если (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone && [UIScreen mainScreen] .bounds.size.height * [UIScreen mainScreen] .scale> = 1136) {sec1.frame = CGRectMake (х, у, ш, ч); } – Tendulkar

ответ

1

Я думаю, что проблема в вашем случае находится в фоновом изображении фрейма, а не в представлении. Проверьте, что UIImageView отображает ваш фон, если он изменяет размер для фонового изображения. Счетчик проверки кадра подвид с помощью

NSLog(@"Subview Frame = %@",NSStringFromCGRect(subview.frame)) 

проверить, что размеры экрана как для сетчатки и не-сетчатка же. т. е. (либо должно быть 3,5 дюйма для обоих, либо для 4). Также примените авторезистирование на вашем фоне изображения

+0

спасибо. Я не применял автоматизацию в корневом представлении. поэтому автоматизация не работает должным образом. – manujmv