2011-08-30 3 views
1

UIButton 프레임 설정과 관련하여 문제가 있습니다.UIButton의 프레임을 UILabel의 특정 단어로 설정하십시오.

 NSString *sample = @"Demo to set display view on label in iPhone"; 

    CGSize maximumLabelSize = CGSizeMake(55,9999); 
    expectedLabelSize = [sample sizeWithFont:[UIFont systemFontOfSize:20] 
               constrainedToSize:maximumLabelSize 
               lineBreakMode:UILineBreakModeWordWrap]; 

    NSLog(@"%f",expectedLabelSize.height); 


    self.label = [[UILabel alloc] initWithFrame:CGRectMake(50, 50, expectedLabelSize.width, expectedLabelSize.height)]; 
    self.label.backgroundColor = [UIColor clearColor]; 
    self.label.numberOfLines = 0; 
    self.label.text = sample; 
    [self.label sizeToFit]; 

아래의 uibutton 코드에서 "iPhone"단어 만 클릭 할 수 있도록 텍스트의 프레임 위치를 설정하는 방법은 무엇입니까?

self.button = [UIButton buttonWithType:UIButtonTypeRoundedRect]; 
self.button.frame = CGRectMake(self.label.frame.origin.x, 
           self.label.frame.origin.y+50, 
           expectedLabelSize.width, 
           expectedLabelSize.height); 
+0

이 버튼이 자동으로 라벨 위에 표시되도록 하시겠습니까? –

+0

나는 uilabel의 iPhone text만을 클릭하고 싶다. 어떤 생각이든 –

+0

아, UIButton이 UILabel에 텍스트 "iPhone"이있는 곳이되기를 원합니 까? 그것은 여러 줄로 된 레이블로는 어려움이 있습니다. 텍스트 "iPhone"을 UIButton에만 넣고 UILabel에 넣지 않는 것이 좋습니다. – progrmr

답변

0

당신이 UILabel의 그 단어를두고 정확한 위치를 알 필요가 하이퍼 링크로 UILabel의 클릭 가능한 단지 하나의 단어를 확인하십시오. 이는 특히 여러 줄 레이블을 사용하는 경우 특히 텍스트를 맞출 수 있도록 글꼴의 크기를 조정할 수있는 경우 불가능 (불가능하지 않음)합니다.

왜 UIWebView를 사용하지 않고 대신 하이퍼 링크로 만들까요? 또는 클릭 할 텍스트를 분리처럼 단독으로있는 UIButton에 텍스트를 넣어 :

label.text = @"Demo to set display view on label in "; 
button.titleLabel.text = @"iPhone"; 

참고 : 문제가 해결되지 않으면이 답을 체크 표시해서는 안된다.

+0

아니 작동하지 & 단추의 y 프레임을 얻을 수없는 어떤 아이디어 말해 주시겠습니까? –

+0

어떤 부분이 작동하지 않습니까? 어떻게 실패합니까? NSLog를 추가하고 그것이 무엇을 말하는지 확인하십시오 (그리고 우리에게 말해주십시오). – progrmr

+0

실제로 버튼의 y 프레임을 가져오고 싶습니다. 그리고 uilabel의 높이를 설정하기 위해 iilabel과 CGSizeMake (55,9999)의 텍스트 여러 줄에 self.label.numberOfLines = 0을 사용했습니다. y 프레임을 설정해주십시오. 버튼 –

관련 문제