设置整个iPhone/iPad应用程序的背景图像

Sle*_*lee 60 iphone objective-c ipad

我有一个我想要的图像作为我的应用程序的背景,无论他们在哪个viewcontroller - 你如何实现这一目标?

sud*_*-rf 91

以下是为图像设置背景的方法:

self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"Background.png"]];
Run Code Online (Sandbox Code Playgroud)

编辑:要写出Felixyz所说的内容(并感谢Manni),请在您的代表中执行此操作:

window.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"Background.png"]];
Run Code Online (Sandbox Code Playgroud)

在每个视图中,您想要拥有图像,请执行以下操作:

self.view.backgroundColor = [UIColor clearColor];
Run Code Online (Sandbox Code Playgroud)

  • 我最终在主窗口笔尖上使用了UIImageView,在我的视图上使用了UIColor clearColor.请注意,如上所述,使用colorWithPatternImage会使我的内存使用率在首次加载时从1.7M跳到9.5M - colorWithPatternImage似乎只占用了大量的内存. (7认同)

Fel*_*xyz 8

取决于你有什么样的界面.分页?导航基础?但一般的答案是:在主视图之前/之下向UIWindow添加UIImageView.然后使主视图控制器处理的每个视图都具有透明背景.很难提供更具体的建议,而不知道你是否使用IB,或者你的视图层次结构是什么样的.


Man*_*nni 8

在我的应用程序中,我设置了默认的背景颜色.也许你可以用你的背景图片做到这一点:

1:在AppDelegate中设置UIWindow的背景颜色:

window.backgroundColor = [UIColor myBackgroundGray]; // own Category
Run Code Online (Sandbox Code Playgroud)

2:现在,让所有其他观点透明:

self.view.backgroundColor = [UIColor clearColor]; // = transparent
Run Code Online (Sandbox Code Playgroud)


ana*_*ali 7

在你的AppDelegate中

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
Run Code Online (Sandbox Code Playgroud)

添加此行:

[self.window setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"background.png"]]];
Run Code Online (Sandbox Code Playgroud)

在您必须将您的观看背景设置为之后 [UIColor clearColor];