Пользовательский фон для UINavigationBar в альбомном режиме

Да, на оба этих вопроса.

1) Есть плагины для AWS и Azure. Это позволяет динамически создавать экземпляры предоставления в любом облаке. Если вам просто нужно выполнить развертывание в заранее заданном экземпляре, UCD сделает это из коробки. https://developer.ibm.com/urbancode/plugin/iis-ms-deploy-ibmucd/ https://developer.ibm.com/urbancode/plugin/amazonec2/

2) Плагин Jenkins Publisher будет делать то, что вам нужно, чтобы получить двоичные файлы в UCD: https://developer.ibm.com/urbancode/plugin/jenkins/

7
задан Stefan 30 January 2016 в 15:20
поделиться

5 ответов

Вероятно, необходимо установить autoresizingMask представления фонового изображения; попытайтесь использовать UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight

3
ответ дан 6 December 2019 в 11:53
поделиться

В обоих режимах ориентации экрана гораздо удобнее использовать

[navigationController.navigationBar insertSubview:imgView atIndex:0];

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

6
ответ дан 6 December 2019 в 11:53
поделиться

Решение, которое дал Ben, действительно решало проблему, но это расширяет изображение в альбомном режиме. Я закончил тем, что создал два изображения - один для среды и другого для режима портрета. Я затем добавил код в shouldAutoRotate для изменения изображения navbar на основе ориентации

1
ответ дан 6 December 2019 в 11:53
поделиться

После небольшого исследования и следов и ошибок, я нашел работу, которая не заменит навигационную панель при входе в режим воспроизведения фильма. Надеюсь, это не вызовет проблем с одобрением приложения, но, основываясь на этом посту, я думаю, все должно быть в порядке:

http://developer.apple.com/iphone/library/qa/qa2009/qa1637.html

@implementation UINavigationBar (UINavigationBarCategory)

- (void)drawLayer:(CALayer *)layer inContext:(CGContextRef)ctx
{
    if([self isMemberOfClass: [UINavigationBar class]]){
        UIImage *image = [UIImage imageNamed:@"navBarBackground.png"];
        CGContextClip(ctx);
        CGContextTranslateCTM(ctx, 0, image.size.height);
        CGContextScaleCTM(ctx, 1.0, -1.0);
        CGContextDrawImage(ctx, CGRectMake(0, 0, self.frame.size.width, self.frame.size.height), image.CGImage);
    }else{
        [super drawLayer:layer inContext:ctx];
    }
}

@end
6
ответ дан 6 December 2019 в 11:53
поделиться

Try the simpler method of [UIImage imageNamed:@"navbar_landscape.png"] since a UI element is exactly what imageNamed: is intended for, as ljonesATL shows.

0
ответ дан 6 December 2019 в 11:53
поделиться
Другие вопросы по тегам:

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