2012-02-09 2 views
1

У меня есть код для программного создания кнопок, и здесьsetFrame - мне нужно некоторые разъяснения по этим

UIImage *aroundImage = [UIImage imageNamed:@"locBar.png"]; 
    UIImage *aroundImageDown = [UIImage imageNamed:@"locBarColor.png"]; 
    UIButton *aroundButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
    [aroundButton setFrame:CGRectMake(240, 369, 80, 48)]; 
    [aroundButton setImage:aroundImage forState:UIControlStateNormal]; 
    [aroundButton setImage:aroundImageDown forState:UIControlStateHighlighted]; 
    [aroundButton setImage:aroundImageDown forState:UIControlStateSelected]; 
    [aroundButton addTarget:self action:@selector(aroundMe) forControlEvents:UIControlEventTouchUpInside];  
    [self.view addSubview:aroundButton]; 

так что теперь я поставил рамку для кнопки, но что, если это приложение рассматриваются на iPhone4 в 640x960. Тогда у меня разные образы «[email protected] и [email protected]», и они должны быть с другим CGRectMake, или они должны? Мой вопрос в том, как настроить кнопку для обоих разрешений и сделать это программно.

+1

без каких-либо размеров, учитывая, что фотографии автоматически корректируются в сетчатке или на простом дисплее iPhone. но убедитесь, что изображение с двойным размером с @ 2x существует – Hiren

+0

, поэтому мой код в порядке, чтобы использовать его для Iphone5>. А как насчет ответа @ HChouhan02? – Spire

+0

он неясный вопрос. и убедитесь, что это не iPhone 5. Это просто отличие экрана и сетчатки, как iPhone 2,3, 3G Vs iPhone 4, 4s – Hiren

ответ

2

это автоматический :) ios загрузит версию @ 2x, если она доступна, и если устройство имеет шкалу x2. Кадр в точке, а не в пикселях.

Посмотрите here в пунктах Versus пикселей

+0

, поэтому вы говорите, что мой код в порядке, как есть. У меня есть снимки @ 2x, и я ничего не должен менять для iPhone5 – Spire

+0

Да, это то, что я говорю – Beuj

+0

Arg, я не для iPhone 5, я не вижу будущего :) – Beuj

-1

вы должны поставить условие, а затем в соответствии с экраном размера делает кнопки рамки и дать им изображения.

1

Если вы включаете версию с высоким разрешением изображения с тем же именем, но с @ 2x перед расширением iOS автоматически выберет правильное разрешение в соответствии с разрешением дисплея, если вы используете [UIImage imageNamed: ], или установите изображение в IB.

Смежные вопросы