2016-10-26 4 views
0

다음 코드를 사용하여 떠 다니는 아이콘을 만들었습니다.텍스트가 가운데 맞춤 UI 단추에 정렬되지 않았습니다. ObjectiveC

- (void)createFloatingButton 
{ 

UIButton *floatingButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
floatingButton.frame = CGRectMake(kScreenWidth-kFloatingButtonSize-kFloatingButtonSize/2, self.view.frame.size.height-kFloatingButtonSize-kFloatingButtonSize/2, kFloatingButtonSize,kFloatingButtonSize); 
[floatingButton setBackgroundColor:kNavColor]; 
floatingButton.layer.cornerRadius = kFloatingButtonSize/2; 

//Configre Font and Text 
[floatingButton setTitle:@"+" forState:UIControlStateNormal]; 
floatingButton.titleLabel.font = [UIFont systemFontOfSize:30]; 

[floatingButton addTarget:self action:@selector(floatingButtonTapped) forControlEvents:UIControlEventTouchUpInside]; 

//Mange Alignment 
floatingButton.contentHorizontalAlignment = UIControlContentHorizontalAlignmentCenter; 
floatingButton.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter; 

//Add shadow 
floatingButton.layer.shadowColor = [[UIColor blackColor] CGColor]; 
floatingButton.layer.shadowOffset = CGSizeMake(0, 2.0f); 
floatingButton.layer.shadowOpacity = 0.6f; 
floatingButton.layer.shadowRadius = 3.0f; 
floatingButton.layer.masksToBounds = NO; 

[self.view addSubview:floatingButton]; 
} 

내 출력은 같다 :

enter image description here

나는 중앙에 +을 가져올 수 없습니다입니다.

+0

이 모든 작업을 수행하는 대신 +가 포함 된 이미지를 사용할 수 있습니다. 하나의 이미지를 + ​​자체로 만듭니다. 그것의 쉬운 문제 + –

+0

@ 제키 이미지에서 나는 제스처를 추가하거나 UIImage Behind UIButton을 추가하면 코드가 증가하지만 Imgaege를 사용하지 않아도됩니다. – Dalvik

+0

"floatingButton.titleLabel.textAlignment = NSTextAlignmentCenter;" 유용해야합니다. – alicanbatur

답변

2

Set UIButton contentEdgeInsets는 단추 제목을 위쪽, 왼쪽, 아래쪽, 오른쪽으로 조정합니다. 귀하의 경우에는

floatingButton.contentEdgeInsets = UIEdgeInsetsMake(top, left, bottom, right); 

, 그것은 제목이

floatingButton.contentEdgeInsets = UIEdgeInsetsMake(0, 2, 3, 0); 

주 중심을 만들 것입니다 : 당신의 주어진 코드 kFloatingButtonSize에 따라 언급되지 않은, 내가 kFloatingButtonSize = 50

enter image description here

로 확인
관련 문제