установить фоновое изображение для всего приложения iPhone / iPad

У меня есть одно изображение, которое я хочу в качестве фона для своего приложения, независимо от того, на каком объекте управления ими находятся – как вы это делаете?

Вот как вы устанавливаете фон для изображения:

self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"Background.png"]]; 

Редактировать: Чтобы написать, что сказал Феликсис (и благодаря Манни), сделайте это в своем делегате:

 window.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"Background.png"]]; 

И в каждом представлении вы хотите иметь изображение, сделайте следующее:

 self.view.backgroundColor = [UIColor clearColor]; 

Зависит от того, какой интерфейс у вас есть. Вкладки? Навигационная система? Но общий ответ: добавьте UIImageView в свой UIWindow до / ниже вашего основного вида. Затем сделайте каждый вид, обработанный вашим основным controllerом представления, прозрачным фоном. Трудно дать более конкретные советы, не зная, используете ли вы IB или нет, или как выглядит ваша иерархия взглядов.

В моем приложении я установил цвет фона по умолчанию. Возможно, вы можете сделать это с фоновым изображением:

1 .: Установите цвет фона вашего UIWindow в AppDelegate:

 window.backgroundColor = [UIColor myBackgroundGray]; // own Category 

2: И теперь сделайте все другие виды прозрачными:

 self.view.backgroundColor = [UIColor clearColor]; // = transparent 

В вашем AppDelegate в

 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 

Добавьте эту строку:

 [self.window setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"background.png"]]]; 

После того, как вам просто нужно установить фоны просмотров на [UIColor clearColor];

Я не уверен в производительности, но мне нужно было что-то сделать, и в итоге я использовал UIImageView, который хорошо работает (на C #, но работает одинаково в obj-c):

 //Add the view controller first, to ensure proper order of views later. Window.RootViewController = new UIViewController(); //create backdrop image view var imageView = new UIImageView(Window.Bounds); imageView.Image = UIImage.FromBundle("backdrop.jpg"); //insert into window. Window.InsertSubview(imageView, 0); 

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

Ваш фон является свойством любого объекта, наследующего объект. Например, ярлыки, кнопки, controllerы и окно приложения имеют фон. Если вы хотите, чтобы это было полностью bg для всего приложения, вы должны подняться по пути в своих controllerах, чтобы найти очень «верхнее» (снизу) представление и установить его фон как желаемое изображение.

просто назовите это assignbackground в viewDidLoad

 override func viewDidLoad() { assignbackground() } func assignbackground(){ let background = UIImage(named: "background") var imageview : UIImageView! imageview = UIImageView(frame: view.bounds) imageview.contentMode = UIViewContentMode.ScaleAspectFill imageview.clipsToBounds = true imageview.image = background imageview.center = view.center view.addSubview(imageview) self.view.sendSubviewToBack(imageview) } 

Обычно я использую эту функцию, чтобы избежать совпадений с панелью навигации на iphone.

 -(void)setImageBackground:(NSString*)imageName{ UINavigationController* navigationController = [self navigationController]; float height = navigationController.toolbar.frame.size.height; CGSize size = self.view.frame.size; size.height = size.height; UIGraphicsBeginImageContext(size); CGRect bounds = self.view.bounds; bounds.origin.y = bounds.origin.y + height; bounds.size.height = bounds.size.height-height; [[UIImage imageNamed:imageName] drawInRect:bounds]; UIImage *image = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); self.view.backgroundColor = [UIColor colorWithPatternImage:image]; } 
  • Лучший подход для синтаксического анализа XML на iPhone
  • objective-C - Когда использовать «я»,
  • target переопределяет настройки FRAMEWORK_SEARCH_PATHS
  • Сортировка NSArray строк или объектов даты
  • Множественное перечисление значений в Obj-C
  • Выбрать программную строку таблицы таблиц
  • UIImage для base64 Кодирование строк
  • iPhone: как передавать данные между несколькими Viewcontrollers в приложении Tabbar
  • Перемещение UIView (изображение и текст)
  • Можно ли перепроектировать мое приложение iPhone?
  • Проверка подлинности электронной почты на textField в iPhone sdk
  • Interesting Posts
    Давайте будем гением компьютера.