私は最初のiOSアプリを作成していますが、UICollectionViewのbackgroundColorを変更する際に問題が発生しているようです。
アプリには、ナビゲーションコントローラーと特定のビューがあります。最初は、AppDelegate実装ファイルの色を変更できました。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
feedsList = [[FeedsListTVC alloc] init];
rootNC = [[RootNC alloc] init];
rootNC.viewControllers = [NSMutableArray arrayWithObjects:feedsList, nil];
self.window.rootViewController = rootNC;
return YES;
}
使用する
self.window.backgroundColor = [UIColor whiteColor];
すべてのビューで背景色を変更できました。しかし、私はもう1つのビュー(UICollectionView)を追加し、それをメインビューとして設定することにしました。そこで、AppDelegateを次のように変更しました。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
CollectionViewLayoutCVL *collectionViewLayout = [[CollectionViewLayoutCVL alloc] init];
self.viewController = [[MainViewControllerCVC alloc] initWithCollectionViewLayout:collectionViewLayout];
rootNC = [[RootNC alloc] init];
rootNC.viewControllers = [NSMutableArray arrayWithObjects:viewController, nil];
self.window.rootViewController = rootNC;
return YES;
}
私の観点からは、これはほとんど同じように見えます。
また、UICollectionViewの実装ファイル内でこれを試しましたが、これにより、コレクションのビューの色ではなく、ビューコントローラの色が変更されます。
self.view.backgroundColor = [UIColor whiteColor];
何か案は?
self.collectionView.backgroundColor = [UIColor yourColor];
お役に立てれば
UIView *redView = [UIView new];
redView.backgroundColor = [UIColor redColor];
_collectionView.backgroundView = redView;