Как отобразить вид, который не заполняет экран? - PullRequest
1 голос
/ 14 января 2011

Я пытаюсь отобразить всплывающее окно в игре и попросить игрока нажать несколько кнопок, чтобы они могли продолжить.Я хочу, чтобы часть текущего представления оставалась видимой, чтобы мне не нужно было заново создавать ее в модальном всплывающем окне.Информация, необходимая для принятия решения, уже представлена ​​в этом представлении.Я делаю большую часть этого, используя IB.Что я не могу понять (если это вообще возможно), так это как отобразить представление, которое короче высоты экрана ...

Ответы [ 4 ]

1 голос
/ 14 января 2011

Вы не можете сделать это с модальным контроллером представления. Вместо этого создайте / создайте свое представление (не UIViewController), измените его размер по мере необходимости, добавьте его в свое представление и удалите его самостоятельно, когда закончите.

1 голос
/ 14 января 2011

Просто добавьте подпредставление.Это не может быть сделано в IB, но должно быть сделано в коде.

Вот простой пример подпредставления:

CGRect myFrame = CGRectMake(0, 0, 300, 200); //put the size/coordinates for your view here
UIView *theSubview = [[UIView alloc] initWithFrame:myFrame];
theSubview.backgroundColor = [UIColor blackColor];
[self.view addSubview:theSubview];
[theSubview release];
0 голосов
/ 14 января 2011

Я делал что-то подобное раньше. Я создал вид в IB и сделал фон прозрачным. Затем я добавил подпредставление к этому представлению в IB и изменил его размер до желаемого размера. Вы хотите убедиться, что подпредставление не прозрачно, как фон.

Тогда я просто отобразил его через ModalViewController

[self presentModalViewController:customModalView animated:YES];

Это прекрасно работает, и вы можете настроить фон. Например, если вы хотите более темное наложение (аналогично модальному окну листа формы), можно сделать фон основного вида черным и изменить непрозрачность до 25%. Надеюсь, это поможет ...

0 голосов
/ 14 января 2011

подкласс UIView с настраиваемым прозрачным представлением, кроме случаев, когда это необходимо. затем используйте это как модальное представление или просто поместив его поверх иерархии стека.

Также из вашего вопроса может показаться, что вас может заинтересовать создание подкласса UIAlertView и создание «всплывающего окна» таким образом. Хорошую статью об этом можно найти в Просмотр предупреждений с приглашением , а также Пользовательский фон AlertView

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