如何在Swift Xcode 6中更改按钮文本?

时间:2014-10-29 22:13:42

标签: ios swift

这就是我要做的事情。如果您曾经玩Halo或CoD,您就知道可以更改武器装载的名称。

我正在做的是让你可以使用文本字段更改你的装载名称。这就是问题所在,加载菜单中的加载名称是一个按钮(用于选择和查看有关该加载的信息),我可以写下这个:

@IBAction func renameClassButton(sender: AnyObject) {
    classTopButton.text = "\(classTopTextField)"
}

除了[classTopButton]是一个不允许' .text'后缀

8 个答案:

答案 0 :(得分:274)

你可以这样做:

button.setTitle("my text here", forState: .normal)

Swift 3和4:

button.setTitle("my text here", for: .normal)

答案 1 :(得分:20)

在Xcode 8中 - Swift 3

button.setTitle( "entertext" , for: .normal )

答案 2 :(得分:6)

现在这是对于swift 3,

routerlink

(变量的常量声明不是必需的,只要确保你从按钮中使用发送者,就像这样):

    public static boolean methodExists(Class clazz, String methodName) {
    boolean result = false;
    for (Method method : clazz.getDeclaredMethods()) {
        if (method.getName().equals(methodName)) {
            result = true;
            break;
        }
    }
    return result;
}

请记住,这是在按钮的IBAction中使用的。

答案 3 :(得分:2)

您可以使用发件人参数

  @IBAction func TickToeButtonClick(sender: AnyObject) {

        sender.setTitle("my text here", forState: .normal)


}

答案 4 :(得分:2)

快速4工作以及3

libero.setTitle("---", for: .normal)

libero是一个uibutton

答案 5 :(得分:1)

请注意,如果您使用的是NSButton,则没有setTitle个功能,相反,它是一个属性。

@IBOutlet weak var classToButton: NSButton!

. . .


classToButton.title = "Some Text"

答案 6 :(得分:1)

在Swift 4中,我之前尝试了所有这些,但仅运行:

 public class ProjektService : BaseService
{
    public ProjektService(ProjektDbContext ctx) : base(ctx)
    {
    }

    public List<Projekt> GetAllProjekts()
    {
        return base.DataContext.Projektid.ToList();
    }

    public List<Tegevus> GetAllTegevused()
    {
        return base.DataContext.Tegevused.ToList();
    }

    public List<TegevusProjektis> GetAllTegevusedProjektis()
    {
        return base.DataContext.TegevusedProjektides.ToList();
    }

    public Projekt GetProjektById(int id)
    {
        return DataContext.Projektid.Where(x => x.ProjektId == id).Single();
    }

    public Tegevus GetTegevusById(int id)
    {
        return DataContext.Tegevused.Where(x => x.TegevusId == id).Single();
    }

    public TegevusProjektis GetTegevusProjektisById(int id)
    {
        return DataContext.TegevusedProjektides.Where(x => x.TegevusProjektisId == id).Single();
    }

答案 7 :(得分:1)

注意:

someButton.setTitle("New Title", forState: .normal)

仅在“标题类型”为“ 普通”时有效。

enter image description here