Изменение размера UIView - PullRequest
       12

Изменение размера UIView

7 голосов
/ 09 января 2012

Я пытаюсь изменить размер экземпляра UIView, который является частью Tapjoy SDK.

вот код:

- (UIView*)showFeaturedAppFullScreenAd:(NSString*)adURL withFrame:(CGRect)frame
{
    UIView *fullScreenAdView = nil;

    [self moveViewToFront];

    [self.view setAlpha:1];

    fullScreenAdView = [TJCFeaturedAppViewHandler showFullScreenAdWithURL:adURL withFrame:frame];
    [self.view addSubview:fullScreenAdView];

    return fullScreenAdView;
}

Я попытался добавить свой собственный метод установки в вышеупомянутом методе:

fullScreenAdView.frame = CGRectOffset(fullScreenAdView.frame, 50, 500);

Но это не повлияло на рекламу Tapjoy, когда я запустил ее.

У меня такой вопрос: я пытаюсь изменить размер этого экземпляра, чтобы вместо 100% окна устройства он занимал (скажем, 70%).

У меня есть некоторые идеи, как это сделать, но они расплывчаты (например, написание fullScreenAdView = [mainScreen * 0.7f), но я надеялся, что у кого-то будут более конкретные идеи.

edit: вот супер-высокотехнологичная картина моей ситуации. http://i207.photobucket.com/albums/bb289/teh_Mac/tjAd-1.jpg

Это прототип, который я придумал:

fullScreenAdView.frame = CGRectMake(0,0, [mainScreen * 0.7f], [mainScreen * 0.7f];

1 Ответ

5 голосов
/ 12 января 2012

Почему бы вам не использовать CGRectMake и сделать его процентом от суперпредставления?

float percentage = .7f;  //whatever you like
int xPosition = fullScreenAdView.superview.frame.size.width * ((1 - percentage) / 2);
int yPosition = fullScreenAdView.superview.frame.size.height * ((1 - percentage) / 2);

int width = fullScreenAdView.superview.frame.size.width * (1 - percentage);
int height = fullScreenAdView.superview.frame.size.height * (1 - percentage);

fullScreenAdView.frame = CGRectMake(xPosition, yPosition, width, height);

Это написано у меня на макушке, но я думаю, что с небольшой настройкой это сделает то, что выхочу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...