iPhone Modal View Smaller, что экран

В Android нет такой вещи, как электронная почта. Там также нет фильтра намерений, который можно создать, чтобы включать только почтовые приложения. Каждое приложение (или действие) может определять свои собственные фильтры намерений.

Таким образом, при использовании намерения ACTION_SEND, вам придется полагаться на интеллект пользователя, чтобы выбрать свое любимое почтовое приложение из списка (а не TubeMate).

11
задан Max Ballo 18 May 2011 в 13:16
поделиться

4 ответа

I'm coding similar thing. My approach include.....

  1. Not using dismissModalViewControllerAnimated and presentModalViewController:animated.

  2. Design a customized full sized view in IB. In its viewDidLoad message body, set the background color to clearColor, so that space on the view not covered by controllers are transparent.

  3. I put a UIImageView under the controllers of the floating view. The UIImageView contains a photoshoped image, which has rounded corners and the background is set to transparent. This image view serves as the container.

  4. I uses CoreAnimation to present/dismiss the floating view in the modal view style: (the FloatingViewController.m)

    - (void)viewDidLoad
    {
     [super viewDidLoad];
     [self.view setBackgroundColor:[UIColor clearColor]];
    
     [UIView beginAnimations:nil context:nil];
     [self.view setFrame:CGRectMake(0, 480, 320, 480)];
    
     [UIView setAnimationDuration:0.75f];
     [self.view setFrame:CGRectMake(0, 0, 320, 480)];
     [UIView commitAnimations];
    }
    
11
ответ дан 3 December 2019 в 06:47
поделиться

Я настоятельно рекомендую использовать контроллер навигации для вставки в подпредставление вместо наложения на него. Это ожидаемая модель, и любая небольшая выгода, которую, как вы думаете, вы получите, сделав это по-своему, будет в значительной степени компенсирована принципом (наименьшего) удивления.

Если вам действительно нужно сделать это таким образом, я полагаю, что уловка состоит в том, чтобы добавить первое табличное представление как подвид прозрачного «удерживающего» представления, которое поддерживает контроллер представления. Затем добавьте новое подвид как еще одно подвид.

2
ответ дан 3 December 2019 в 06:47
поделиться

Опять же, если вы действительно хотите сделать это, вместо добавления прозрачного «удерживающего» представления, поскольку это всплывающее окно по сути является модальным, я бы сделал его подпредставлением непосредственно окна.

Возможно, вы захотите поставить за ним прозрачный черный экран, чтобы предотвратить касание фона и сфокусировать ввод во всплывающем окне.

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

1
ответ дан 3 December 2019 в 06:47
поделиться

wangii

Это в значительной степени решение, которое я нашел. Я загружаю представление с помощью loadNibNamed, а затем просто добавляю его поверх с помощью addSubView, например:

//Show a view on top of current view with a wait indicator. This prevents all user interactions.
-(void) showWaitView{
    NSArray* nibViews =  [[NSBundle mainBundle] loadNibNamed:@"WaitView" owner:self options:nil];
#ifdef __IPHONE_2_1
    waitView = [ nibViews objectAtIndex: 0];
#else
    waitView = [ nibViews objectAtIndex: 1];
#endif          
    CGFloat x = self.view.center.x - (waitView.frame.size.width / 2);
    CGFloat y = self.view.center.y - (waitView.frame.size.height / 2);
    [waitView setFrame:CGRectMake(x,y,waitView.bounds.size.width,waitView.bounds.size.height)];
    [self.view addSubview:waitView];    
}

Не могли бы вы подробнее рассказать о пунктах 3 и 4?

Что я сделал, чтобы дать представлению аспект круглого прямоугольника, поместил его внутри кнопка круглого прямоугольника.

Этот код фактически позволит вам иметь небольшое плавающее представление, но если представление меньше его родительского, пользователь может взаимодействовать с видимой частью родительского элемента.

В конце я создаю мой вид того же размера, но сохранил код на всякий случай.

Gonso

3
ответ дан 3 December 2019 в 06:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: