我正在尝试使用一些信息(txtTitulo,txt1,img1)填充视图控制器,如下所示:
class EstruturaAnatTroncoViewController: UIViewController {
@IBOutlet weak var casca: UIButton!
@IBOutlet weak var cambio: UIButton!
@IBOutlet weak var aneis: UIButton!
@IBOutlet weak var cerne: UIButton!
@IBOutlet weak var raios: UIButton!
@IBOutlet weak var medula: UIButton!
var nameButton: String!
override func viewDidLoad() {
super.viewDidLoad()
let color = UIColor(red: 237, green: 236, blue: 238, alpha: 1)
casca.layer.cornerRadius = 25
casca.layer.borderWidth = 1
casca.layer.borderColor = color.CGColor
casca.setTitle("Casca", forState: UIControlState.Normal)
casca.titleLabel!.textAlignment = .Center
casca.titleLabel!.textColor = color
cambio.layer.cornerRadius = 25
cambio.layer.borderWidth = 1
cambio.layer.borderColor = color.CGColor
cambio.setTitle("Câmbio", forState: UIControlState.Normal)
cambio.titleLabel!.textAlignment = .Center
cambio.titleLabel!.textColor = color
aneis.layer.cornerRadius = 25
aneis.layer.borderWidth = 1
aneis.layer.borderColor = color.CGColor
aneis.setTitle("Anéis", forState: UIControlState.Normal)
aneis.titleLabel!.textAlignment = .Center
aneis.titleLabel!.textColor = color
cerne.layer.cornerRadius = 25
cerne.layer.borderWidth = 1
cerne.layer.borderColor = color.CGColor
cerne.setTitle("Cerne e alburno", forState: UIControlState.Normal)
cerne.titleLabel!.textAlignment = .Center
cerne.titleLabel!.textColor = color
raios.layer.cornerRadius = 25
raios.layer.borderWidth = 1
raios.layer.borderColor = color.CGColor
raios.setTitle("Raios", forState: UIControlState.Normal)
raios.titleLabel!.textAlignment = .Center
raios.titleLabel!.textColor = color
medula.layer.cornerRadius = 25
medula.layer.borderWidth = 1
medula.layer.borderColor = color.CGColor
medula.setTitle("Medula", forState: UIControlState.Normal)
medula.titleLabel!.textAlignment = .Center
medula.titleLabel!.textColor = color
}
@IBAction func sliderView(sender: AnyObject) {
var storyBoard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
var vc: UINavigationController = storyBoard.instantiateViewControllerWithIdentifier("SlideViewController") as! UINavigationController
self.showViewController(vc, sender: self)
}
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if nameButton == "Casca" {
var dtVC = segue.destinationViewController as! DetailViewController
dtVC.txtTitulo = "Casca"
dtVC.img1 = "casca.jpg"
dtVC.txt1 = "A casca é constituída interiormente pelo floema, conjunto de tecidos vivos especializados para a condução da seiva elaborada, e exteriormente pelo córtex, periderme e ritidoma, tecidos que revestem o tronco."
} else if nameButton == "Câmbio" {
var dtVC = segue.destinationViewController as! DetailViewController
dtVC.txtTitulo = "Câmbio"
dtVC.img1 = "cambio.jpg"
dtVC.txt1 = "O câmbio é um tecido meristemático, isto é, apto a gerar novos elementos celulares, constituído por uma camada de células situada entre o xilema e o floema, só sendo visível ao microscópio. Permanece ativo durante toda a vida do vegetal e é responsável pela formação dos tecidos secundários que constituem o xilema e a casca. A atividade cambiel é sensivelmente influenciada pelas condições climáticas."
}
}
@IBAction func casca(sender: AnyObject) {
nameButton = casca.titleLabel!.text
}
@IBAction func cambio(sender: AnyObject) {
nameButton = cambio.titleLabel!.text
}
@IBAction func aneis(sender: AnyObject) {
nameButton = aneis.titleLabel!.text
}
@IBAction func cerne(sender: AnyObject) {
nameButton = cerne.titleLabel!.text
}
@IBAction func raios(sender: AnyObject) {
nameButton = raios.titleLabel!.text
}
@IBAction func medula(sender: AnyObject) {
nameButton = medula.titleLabel!.text
}
override func viewWillAppear(animated: Bool) {
nameButton = nil
}
}
IBAction func casca正在运作,但其他人则没有。我不知道为什么会这样。 当我使用其他IBAction时,nameButton会更改其值,但是在prepareForSegue函数中没有任何反应!我究竟做错了什么?谢谢你的帮助。
P.S。:如果你们需要更多关于任何事情的信息,请告诉我们!
答案 0 :(得分:1)
您不需要在此处播放按钮名称。而是为每个按钮创建一个segue到同一个目标视图控制器。
回答你的问题,答案是"是的,我们可以在prepareForSegue方法中使用if / else块。
更改方法prepareForSegue如下。
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?)
{
if (segue.identifier == "cascaButtonSegue")
{
var dtVC = segue.destinationViewController as! DetailViewController
dtVC.txtTitulo = "Casca"
dtVC.img1 = "casca.jpg"
dtVC.txt1 = "A casca é constituída interiormente pelo floema, conjunto de tecidos vivos especializados para a condução da seiva elaborada, e exteriormente pelo córtex, periderme e ritidoma, tecidos que revestem o tronco."
}
else if (segue.identifier == "cambioButtonSegue")
{
var dtVC = segue.destinationViewController as! DetailViewController
dtVC.txtTitulo = "cambio"
dtVC.img1 = "cambio.jpg"
dtVC.txt1 = "A cambio é constituída interiormente pelo floema, conjunto de tecidos vivos especializados para a condução da seiva elaborada, e exteriormente pelo córtex, periderme e ritidoma, tecidos que revestem o tronco."
}
else if (segue.identifier == "aneisButtonSegue")
{
var dtVC = segue.destinationViewController as! DetailViewController
dtVC.txtTitulo = "aneis"
dtVC.img1 = "aneis.jpg"
dtVC.txt1 = "A cerne é constituída interiormente pelo floema, conjunto de tecidos vivos especializados para a condução da seiva elaborada, e exteriormente pelo córtex, periderme e ritidoma, tecidos que revestem o tronco."
}
else if (segue.identifier == "cerneButtonSegue")
{
var dtVC = segue.destinationViewController as! DetailViewController
dtVC.txtTitulo = "cerne"
dtVC.img1 = "cerne.jpg"
dtVC.txt1 = "A cerne é constituída interiormente pelo floema, conjunto de tecidos vivos especializados para a condução da seiva elaborada, e exteriormente pelo córtex, periderme e ritidoma, tecidos que revestem o tronco."
}
else if (segue.identifier == "raiosButtonSegue")
{
var dtVC = segue.destinationViewController as! DetailViewController
dtVC.txtTitulo = "raios"
dtVC.img1 = "raios.jpg"
dtVC.txt1 = "A raios é constituída interiormente pelo floema, conjunto de tecidos vivos especializados para a condução da seiva elaborada, e exteriormente pelo córtex, periderme e ritidoma, tecidos que revestem o tronco."
}
else if (segue.identifier == "medulaButtonSegue")
{
var dtVC = segue.destinationViewController as! DetailViewController
dtVC.txtTitulo = "medula"
dtVC.img1 = "medula.jpg"
dtVC.txt1 = "A medula é constituída interiormente pelo floema, conjunto de tecidos vivos especializados para a condução da seiva elaborada, e exteriormente pelo córtex, periderme e ritidoma, tecidos que revestem o tronco."
}
}
希望这会对你有所帮助。 :)
答案 1 :(得分:0)
改变这一点,
override func viewWillAppear(animated: Bool) {
nameButton = ""
}