【问题标题】:How to change a button's title programmatically [duplicate]如何以编程方式更改按钮的标题[重复]
【发布时间】:2017-09-13 16:32:02
【问题描述】:

我有一个 Master-DetailView 项目,我需要像在这里一样通过数组更改按钮的标题:

import UIKit
import AVFoundation
import MapKit

class TemplateTestViewController: UIViewController,MKMapViewDelegate {

    @IBOutlet var ProfileMapView: MKMapView!
    @IBOutlet var BarOrClubLabel: UILabel!
    @IBOutlet var HeaderProfileName: UILabel!
    @IBOutlet var HeaderprofileImage: UIImageView!
    @IBOutlet var StreetProfileLabel: UILabel!
    @IBOutlet var ProfilePhoneNumberLabel: UIButton!
    @IBOutlet var WorkTimeLabel: UILabel!
    @IBOutlet var AgeLabel: UILabel!

    override func viewDidLoad() {
        super.viewDidLoad()
        //Set Ups the Image Template :
        HeaderprofileImage.image = UIImage(named: ProfileImages[MyIndex])
        //Sets Up The BIG Name Template :
        HeaderProfileName.text = ProfileNames[MyIndex]
        //Sets Up The Navigation Bar Name :
        navigationItem.title = ProfileNames[MyIndex]
        //Sets Up Street Text :
        StreetProfileLabel.text = ProfileStreets[MyIndex]
        //Sets Up Bar Or Club Text :
        BarOrClubLabel.text = ProfileBarOrClub[MyIndex]
        //Sets Up Age Text :
        AgeLabel.text = AgeText[MyIndex]

我试过了:

ProfilePhoneNumberLabel.setTitle(ProfilePhoneNumbers[MyIndex], for: UIControlState.normal)

它没有改变。

有没有办法做这样的事情?如果是这样,有人可以告诉我怎么做吗? 先谢谢了

【问题讨论】:

  • 使用 setTitle
  • @Mannopson 看看我试过的对我没用
  • 你在哪里尝试调用setTitle
  • 由于某种原因我试过没用
  • @rmaddy 标题必须简单明了才能通过代码更改吗?

标签: ios swift uitableview button nsindexpath


【解决方案1】:

嗯....这很尴尬,但是您必须在情节提要中将 UIButton 标题设置为 Plain 才能更改它

ProfilePhoneNumberLabel.setTitle(PhoneNumbers[MyIndex], for: .normal)

+

UIButton标题

=

快乐的露营者

【讨论】:

    【解决方案2】:

    这是您为ProfilePhoneNumberLabel设置标题的方法

    ProfilePhoneNumberLabel.setTitle(PhoneNumbers[MyIndex], for: .normal)
    

    for 参数可让您为按钮设置各种状态的文本。大多数情况下,为normal 状态设置标题就足够了。

    【讨论】:

    • 这是问题中发布的相同代码。这如何解决问题?
    • 是的,已经不适合我了
    • 标题是否必须简单明了才能通过代码更改?
    • 是的,它应该很简单——我没有意识到你的按钮不是。我从另一个答案中看到你让它工作了。祝你的项目好运!
    猜你喜欢
    • 2011-05-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-03
    • 2021-03-24
    • 2011-08-03
    • 2011-08-23
    • 1970-01-01
    相关资源
    最近更新 更多