2016-12-16 42 views
0

单击时如何更改标签中的字母? 2个按钮用于较小的字母或大写。单击时如何更改标签中的字母?

当我们单击小写字母的标签更改为小写字母,反之亦然。

如何做到这一点?我尝试了一些代码,但我被卡住了。

enter image description here

let ABC = ["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"] 

var str: Character = "Z" 

//@IBOutlet weak var capitalABC: UIButton! 
// @IBOutlet weak var smallac: UIButton! 
// @IBOutlet weak var Abclbl: UILabel! 
@IBOutlet weak var Abclbl: UILabel! 
// @IBOutlet weak var Abclbl: Le! 

override func viewDidLoad() { 
    super.viewDidLoad() 

    Abclbl.text = ABC[0] 

    // Do any additional setup after loading the view. 
} 

func ABCPre(sender: AnyObject) { 
    if Abclbl.text == "a" 
    { 
     print("Do nothing") 
    } 
    else 
    { 
     let preVal = self.Abclbl.text! 
     var inde = ABC.indexOf(preVal) 
     inde = inde! - 1 
     let get = ABC[inde!] 
     Abclbl.text = get 
     alphReocg(Abclbl.text!) 
    } 
} 

func ABCNext(sender: AnyObject) { 
    //let str: String = "Z" 
    if Abclbl.text! == String(str) 
    { 
     print("Do nothing") 
    } 
    else 
    { 
     let preVal = self.Abclbl.text! 
     var inde = ABC.indexOf(preVal) 
     inde = inde! + 1 
     let get = ABC[inde!] 
     Abclbl.text = get 
     alphReocg(Abclbl.text!) 
    } 
} 
+0

请澄清你的问题。您发布的代码到底有什么问题? – rmaddy

+0

是的。这个问题并不能清楚地理解 –

+0

听起来像你的任务的一部分涉及改变一个字符串的情况。 'String'具有['小写()'](https://developer.apple.com/reference/swift/string/1641392-lowercased)和['大写()'](https://developer.apple。 com/reference/swift/string/1640996-uppercased)函数。 – mattliu

回答

0

有小后者与资本后者之间的差异,当你尝试哟得到像inde = ABC.indexOf("a")指数将返回但是当你试图让这种方式inde = ABC.indexOf("A")它将返回 我对你的功能有点变化和该功能处理小型和资本后两个功能 试试这个 首先,你需要添加一个标志变量,它处理的按钮PRES S(小或资本) 像这样

var isCapital = true 

添加上述变量的功能,例如波纹管

func ABCCapital(sender: AnyObject) { 
    isCapital = true 
    let currentValue = self.Abclbl.text! 
    Abclbl.text = currentValue.capitalized 

} 
func ABCSmall(sender: AnyObject) { 
    isCapital = false 
    let currentValue = self.Abclbl.text! 
    Abclbl.text = currentValue.lowercaseString 

} 

func ABCPre(sender: AnyObject) { 
    if Abclbl.text == "a" || Abclbl.text == "A" 
    { 
     print("Do nothing") 
    } 
    else 
    { 
     let preVal = self.Abclbl.text! 
     if isCapital == true { 
      var inde = ABC.indexOf(preVal) 
      inde = inde! - 1 
      let get = ABC[inde!] 
      Abclbl.text = get 
     } else { 
      var inde = ABC.indexOf(preVal.capitalized) 
      inde = inde! - 1 
      let get = ABC[inde!] 
      Abclbl.text = get.lowercaseString 
     } 
     alphReocg(Abclbl.text!) 
    } 
} 

func ABCNext(sender: AnyObject) { 
    //let str: String = "Z" 
    if Abclbl.text! == "Z" || Abclbl.text! == "z" 
    { 
     print("Do nothing") 
    } 
    else 
    { 
     let preVal = self.Abclbl.text! 
     if isCapital == true { 
      var inde = ABC.indexOf(preVal) 
      inde = inde! + 1 
      let get = ABC[inde!] 
      Abclbl.text = get 
     } else { 
      var inde = ABC.indexOf(preVal.capitalized) 
      inde = inde! + 1 
      let get = ABC[inde!] 
      Abclbl.text = get.lowercaseString 
     } 

     alphReocg(Abclbl.text!) 
    } 
} 
+0

Actuallu任务是当我们点击小按钮,我们得到小alphapets的标签,当我们点击预定按钮,它获得(F,E,d,C,B,A),我们点击下一步按钮,我们得到(A,B,C, d,e,f)如果我们点击资本按钮,我们可以得到大写字母。 –

+0

你还没有加入资本与小按钮操作请加两个动作的话,我会更新我的答案 –

+0

我已经更新了我的answer.you可以签我更新的答案。 –

0

如果需要简单的文本转换为小写和大写在前然后转换您的字符串键后点击方法像波纹管

为SWIFT 3.0首次进口基础

import Foundation 

然后在点击按钮的动作

func uppercase(sender: AnyObject) { 

    var title = "Text That you need to convert " 
    title.uppercased() // "TEXT THAT YOU NEED TO CONVERT" 
} 

小写

func lowercase(sender: AnyObject) { 

    var title = "Text That you need to convert" 
    title.lowercased() // "text that you need to convert" 
}