在 UIButton 上同时显示图像和标题 - Swift 3
Posted
技术标签:
【中文标题】在 UIButton 上同时显示图像和标题 - Swift 3【英文标题】:Display Image and Title Simultaneously on UIButton - Swift 3 【发布时间】:2017-05-11 07:08:12 【问题描述】:如何在 UIbutton 上同时显示标题和图像?我尝试关注使用 swift 2 的 Display image and text in Button,但相同的过程仅在 swift 3 中显示图像,标题隐藏。图像源文件为 35x35 像素。我的代码:
let folderButton = UIButton(frame: CGRect(x: 100 , y: 200, width: 200, height: 41))
folderButton.layer.borderColor = UIColor.black.cgColor
folderButton.layer.borderWidth = 1
folderButton.imageEdgeInsets = UIEdgeInsets(top: 0,left: 162,bottom: 3,right: 3)
folderButton.titleEdgeInsets = UIEdgeInsets(top: 0,left: 0,bottom: 0,right: 41)
folderButton.setImage(UIImage(named:"FolderIcon35"), for: UIControlState.normal)
folderButton.setTitle("Test", for: UIControlState.selected)
folderButton.setTitleColor(.black, for: .normal)
view.addSubview(folderButton)
current Output
需要一个程序化解决方案,因为我没有使用情节提要。谢谢!
【问题讨论】:
请确认您的图像最多只显示文件夹,或图像最多显示黑色边框? 【参考方案1】:我认为你应该为 UIControlState.normal
设置标题folderButton.setTitle("Test", for:.normal)
【讨论】:
谢谢!错过 UIControlState.selected 错字是我的错【参考方案2】:试试这个:folderButton.setTitle("yourTitle", for: UIControlState. normal)
【讨论】:
【参考方案3】:问题是您仅将标题设置为 UIButton
选定模式。因此,当您选择按钮时,标题应与您当前的代码一起显示。要在正常模式下显示标题,您应该将标题集状态更改为 .normal
。
folderButton.setTitle("Test", for: UIControlState.normal)
【讨论】:
【参考方案4】:对于ios中的UIButton,我们可以根据状态改变按钮的外观,即Normal和Selected。 在这里,您正在设置按下按钮时按钮的标题,因此您需要通过将状态设置为正常来在代码中添加额外的行。
folderButton.setTitle("Test", for: UIControlState.selected) folderButton.setTitle("Test", for: UIControlState.normal)
更多关于ios中UIButton的参考,请访问:UIButton
【讨论】:
以上是关于在 UIButton 上同时显示图像和标题 - Swift 3的主要内容,如果未能解决你的问题,请参考以下文章
是否可以在丰富的通知 iOS swift 中同时显示图像和视频?