2011-09-09 2 views
0

얘들 아, 다른 단추 안에 프로그래밍 방식으로 UILabel과 UIButton을 만들려고합니다.이 단추를 누르면 UILabel과 UIButton이 만들어지고 별도의 페이지에 하위보기로 추가됩니다. 나는 단추가 레이블 값에 1을 더할 수 있기를 원한다. 여기에 두 번째보기로 레이블을 추가하는 버튼에 대한 코드입니다UILabel의 텍스트가 변경되지 않습니다

-(IBAction)outlet1:(id)sender{ 
UIButton *addButton = [UIButton buttonWithType:UIButtonTypeRoundedRect]; 
[addButton addTarget:self action:@selector(addButton1:)  
forControlEvents:UIControlEventTouchUpInside]; 
[addButton setTitle:@"+" forState:UIControlStateNormal]; 
addButton.frame = CGRectMake(80.0, 210.0, 35, 40.0); 
[cart.view addSubview:addButton]; 

UILabel * label = [[UILabel alloc]initWithFrame:CGRectMake(137, 150, 25, 35)]; 
label.backgroundColor = [UIColor clearColor]; 
label.text = @"1"; 
[cart.view addSubview:label]; 
} 

는이 내가 레이블을 변경할 수 있도록하려면 버튼입니다 :

- (void)addButton1:(id)sender { 
[black.label setText:[NSString stringWithFormat:@"%d",[black.label.text intValue] +1]];  
} 

black 아이바는 그 첫 번째 viewController와 연결되어 있고 cart은 두 번째 viewController와 연결되어 있습니다! 내 문제는 addButton1: 메서드로 연결된 버튼을 누르면 충돌이 발생합니까? 도움에 미리 감사드립니다!

+0

스택 추적에서 얻은 충돌 메시지를 알려주십시오. – Madhu

답변

1

당신은 당신은 당신 @implementation를 통해 액세스 할 수 있습니다, 당신의 UILabelviewDidLoad에 초기화하기과에 바르을 작성해야합니다.

@synthesize label; 

- (void) viewDidLoad 
{ 
    label = [[UILabel alloc] initWithFrame:CGRectMake(137, 150, 25, 35)]; 
} 
+0

나는 그것을 시도했다. 두 번째 viewConroller의'viewDidLoad'에서 레이블을 초기화하려고했는데 지금 나타나지 않습니까? 나는 firstVC에서 ivar를 만들었고 두 번째 VC에 그것을 표시하고 싶습니다. 그래서 어떻게 할 수 있습니까? –

+0

글쎄, 레이블의 나머지 코드, 특히'[cart.view addSubview : addButton];을 추가해야한다. 그렇지 않으면 레이블을 만들고 다른 것에보기를 추가하지 않는다. – WrightsCS

+0

버튼과 라벨 모두에 대해이 작업을 수행 했습니까? 나는 그것을 질문에 추가했다고 생각한다. 도와 주셔서 대단히 감사합니다 !! –