2017-07-28 131 views
3

我想在按鈕右側和左側文本上放置圖像。但是我希望文本從按鈕的左邊距爲20點,圖像從右邊距爲20點。我會怎麼做?我想在UIButton中使用本機圖像和標籤,我不想在按鈕上放置任何東西。這裏有一個例子: enter image description hereUIButton左側文本和右側快捷圖像

回答

-1

下面是我自己的代碼中的一個:

waiterTextField = UITextField(frame: CGRect(x: 0, y: 0, width: self.view.frame.size.width*0.7, height: 40)) 
    waiterTextField.center = CGPoint(x: self.view.center.x, y: logoNameView.frame.maxY + 100) 
    waiterTextField.layer.cornerRadius = 5 
    waiterTextField.layer.borderColor = UIColor.white.cgColor 
    waiterTextField.layer.borderWidth = 1 
    waiterTextField.delegate = self 
    waiterTextField.textAlignment = NSTextAlignment.center 
    waiterTextField.backgroundColor = UIColor.clear 
    waiterTextField.textColor = UIColor(red: 1, green: 1, blue: 1, alpha: 0.7) 
    waiterTextField.font = UIFont(name: "HelveticaNeue-Light", size: 25.0)! 
    waiterTextField.text = "Waiter" 
    waiterTextField.tag = 1 
    waiterTextField.tintColor = UIColor.clear 
    AddSideImageToView(view:waiterTextField, size:0.6, image:#imageLiteral(resourceName: "dropdownArrow")) 
    mainView.addSubview(waiterTextField) 

這是它的結果:

enter image description here

然而,對於文本在左邊只改變這條線

waiterTextField.textAlignment = NSTextAlignment.center 

到這一行

waiterTextField.textAlignment = NSTextAlignment.left 

希望這會有所幫助!

1

使用

button.semanticContentAttribute = .forceRightToLeft 

對於其他的方法可以參考thisthis

4

非常簡單和容易的解決方案:使用包含UIButton和UIImage的UIView,如此快照所示。

  • 在UIView中設置圖像右側並禁用用戶交互,所以用戶操作/點擊會傳遞到按鈕。
  • 在UIView中添加與UIView大小相同的按鈕,使用透明背景色和覆蓋圖像。
  • 設置按鈕的內容偏移量,如此快照中所示。

enter image description here

這將使好辦按鈕動作,性質,並根據您的要求定製圖像位置&大小。嘗試這個。

0

您可以通過編程或內部屬性檢查器更新圖像和標題插圖。以下是屏幕截圖: - enter image description here