2014-03-01 3 views
0

UIViewControllerbackgroundColor을 변경하려고합니다. 코드를 viewDidLoad 방법으로 작성했습니다. 내 다른 객체는 아무런 문제없이 화면에 표시되지만 backgroundColorproperty은 작동하지 않습니다. 화면은 gray입니다. 또한 [UIColor redColor]을 시도하거나 viewDidAppear 메서드에서이 행만 쓰려고했지만 아무 것도 변경되지 않았습니다.ViewController의 배경색을 viewDidLoad에서 변경할 수 없습니다.

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    self.view.backgroundColor = [UIColor colorWithRed:0.15 
               green:0.15 
               blue:0.3 
               alpha:1.0];  
    //Add start button 
    [self.view addSubview:[self createButton:@"ButtonSample.png" 
           setTitleColor:[UIColor whiteColor] 
          buttonPositionX:(CGRectGetMidX(self.view.frame)-30) 
          buttonPositionY:(CGRectGetMidY(self.view.frame)+30.0) 
           buttonWidth:80.0 
           buttonHeight:20.0]]; 

    //Add game title label 
    [self.view addSubview:[self createLabel:@"Vecihi" 
           labelFontName:@"Chalkduster" 
           labelFontSize:20 
          labelPositionX:CGRectGetMidX(self.view.frame)-25 
          labelPositionY:CGRectGetMidY(self.view.frame) 
           labelWidth:80 
           labelHeight:20 
            fontColor:[UIColor whiteColor]]]; 

    //Add game logo imageView 
    [self.view addSubview:[self createImage:@"Spaceship" 
          imagePositionX:CGRectGetMidX(self.view.frame)-30 
          imagePositionY:CGRectGetMidY(self.view.frame)-80 
           imageWidth:40 
           imageHeight:60]]; 
} 
+0

다른 곳의 배경색을 설정하는 것이 좋습니다. 뷰 컨트롤러 파일에서'backgroundColor' 문자열을 검색해보십시오. – Avt

+0

배경색을 – user3235456

+0

으로 설정 한 곳이 없다면이보기 컨트롤러에 대한 self.view 이외의 다른보기가 없다고 확신합니까? –

답변

0

방금 ​​테스트 한 결과로 viewDidLoad에서보기 컨트롤러의 내용보기 색상을 설정하는 것이 좋습니다.

내 경우에는 대부분의 보이는 영역을 차지하는 콘텐츠보기 내부에 내 사용자 지정 색이 거의 보이지 않았습니다. 변경된 배경색을보기 전에 내 서브 뷰의 배경색을 지워야했습니다.

콘텐츠보기를 완전히 채우고 배경색을 숨기는 하위보기가있을 수 있습니까?

그렇지 않은 경우 viewDidLoad 메서드에 중단 점을 추가하여 호출 중인지 확인하십시오.

+0

viewDidLoad가 호출되고 있는데 문제가 없습니다. 그 방법으로 라벨, 이미지 뷰 및 버튼을 설정했습니다. 내 서브 뷰 중 하나가 배경을 채우는 것이 가능하다고 생각합니다. 나는 UILabel, UIButton, UIIMageView라고 말했듯이 세 가지 하위 뷰가 있습니다. 나는이 세 가지 하위 뷰를 호출하지 않고 어느 것이 원인인지 이해하지 않고 시도했지만 viewDİdLoad에는 setbackgroundcolor 만 남겨 놨지만 아무것도 변경되지 않았습니다. – user3235456

관련 문제