我正在構建一個星座應用程序,其中每個標誌是一個按鈕。按一個按鈕,並有相同的按鈕出現在同一頁
當您點擊帶有您的標誌的按鈕時,彈出式視圖控制器將隨星座出現在屏幕上。
我建立了該應用,一個符號/星座
再次每個圖像和對應的符號標題是一個按鈕。
所以魚的符號和單詞「雙魚座」是一個按鈕。
我想添加到我的應用程序,你可以點擊任何星座,它會給你相應的信息。
我先在接口生成器中構建了我的應用程序,然後添加了代碼,以便可能是我知識中的差距來自哪裏。
**問題:我想知道是否有方法來捕捉圖像,我設置 使每個按鈕,並讓它顯示在彈出屏幕上,而不是每次都顯示雙魚的圖像。
這是具有對於主三個頁面
// ViewController.swift
// Zodiac
import UIKit
class ViewController: UIViewController {
var buttonImage: UIImage?
override func viewDidLoad() {
super.viewDidLoad()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
@IBAction func ShowCharacteristicsPopup(_ sender: UIButton) {
let popOverVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "PopChar") as! PopUpViewController
self.addChildViewController(popOverVC)
popOverVC.view.frame = self.view.frame
self.view.addSubview(popOverVC.view)
popOverVC.didMove(toParentViewController: self)
//let buttonTitle = sender.title(for: .normal)!
//print(buttonTitle)
//buttonImage = sender.currentImage!
//print(buttonImage)
}
@IBAction func ShowDailyPopup(_ sender: UIButton) {
let popOverVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "PopDay") as! PopUpViewController
self.addChildViewController(popOverVC)
popOverVC.view.frame = self.view.frame
self.view.addSubview(popOverVC.view)
popOverVC.didMove(toParentViewController: self)
}
@IBAction func ShowYearlyPopup(_ sender: UIButton) {
let popOverVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "PopYear") as! PopUpViewController
self.addChildViewController(popOverVC)
popOverVC.view.frame = self.view.frame
self.view.addSubview(popOverVC.view)
popOverVC.didMove(toParentViewController: self)
}
}
這是我的具有用於彈出視圖控制器的代碼(第三彈出視圖控制器類中的代碼我的視圖控制器類屏幕的行,如果你看一下界面構建地圖)
// PopUpViewController.swift
// Zodiac
import UIKit
class PopUpViewController: UIViewController {
//@IBOutlet weak var vc: ViewController!
@IBOutlet weak var popUpButton: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
self.showAnimate()
//print(vc.buttonImage)
//popUpButton.setImage(vc.buttonImage, for: .normal)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
@IBAction func ClosePopUp(_ sender: UIButton) {
removeAnimate()
}
func showAnimate() {
self.view.transform = CGAffineTransform(scaleX: 1.3,y: 1.3)
self.view.alpha = 0.0
UIView.animate(withDuration: 0.25, animations: {
self.view.alpha = 1.0
self.view.transform = CGAffineTransform(scaleX: 1.0,y: 1.0)
});
}
func removeAnimate() {
UIView.animate(withDuration: 0.25, animations: {
self.view.transform = CGAffineTransform(scaleX: 1.3,y: 1.3)
self.view.alpha = 0.0
}, completion: {(finished : Bool) in
if (finished) {
self.view.removeFromSuperview()
}
});
}
}
在ViewController的ShowCharacteristicsPopup函數中,我嘗試獲取sender.currentImage,然後在popupviewcontroller中訪問它,但是這使我的程序崩潰。
此外,如果任何人有任何的結構技巧,我所有的耳朵