2015-06-05 72 views
0

我試圖將UIImage和文本放入UIButton,通過使用UIEdgeInset來定位它們。UIButton中的圖像和文本位置

問題是,更改edgeinset設置之一將導致圖像和文本更改位置。 這意味着,我把圖像放到正確的位置,然後我改變titleEdgeInset值,突然不僅文本而且圖像改變了位置。

任何人都可以幫忙嗎?

+0

請ellaborate多一些,分享一些代碼在哪裏以及你是如何改變了插圖,併發生了什麼位置 – Qazi

+0

您可以嘗試創建一個新的自定義按鈕類並實現UIButton,通過在自定義按鈕上添加標籤和圖像作爲其屬性來重寫UIButton,導入該類並在視圖上初始化以使用它。 init語句看起來像 - > CustomButton * custBtn = [[CustomButton alloc] initWithFrame:frame]; –

回答

0

根據蘋果的文檔,這不會發生。你有沒有檢查確保你有負面的插入,而不是積極的?

您指定的插頁在該矩形的大小適合按鈕的文本之後應用於標題矩形。因此,正向嵌入值可能實際上會剪切標題文本。

此屬性僅用於在佈局過程中定位標題。 該按鈕不使用此屬性來確定 intrinsicContentSize和sizeThatFits :.

0

我但願這可以幫助你

@property (strong, nonatomic) IBOutlet UIButton *Imagetext; 

NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:@"Click Me"]; 

NSTextAttachment *ImageAttachment = [[NSTextAttachment alloc] init]; 
ImageAttachment.image = [UIImage imageNamed:@"add.png"]; 

NSAttributedString *attributedWithImage = [NSAttributedString attributedStringWithAttachment:ImageAttachment]; 

[attributedString replaceCharactersInRange:NSMakeRange(6, 0) withAttributedString:attributedWithImage]; 
// [attributedString appendAttributedString:attributedWithImage]; 

[self.Imagetext setAttributedTitle:attributedString forState:UIControlStateNormal];