В настоящее время у меня есть Tableview, который, когда пользователь щелкает, отправляет их в новый viewcontroller, который отображает одно изображение. Тем не менее, поскольку мне нужно, чтобы они могли смахивать для отображения второго изображения, связанного с первым (в зависимости от выбранной строки), я пытаюсь создать массив для отправки. Я (думаю?) Успешно создал массив, но у меня возникают проблемы с кодом, так как он не будет «правильно отправлять». Мне интересно, где я ошибаюсь, и какие изменения мне нужно внести, чтобы иметь возможность отправить массив, чтобы пользователь мог провести пальцем и увидеть второе изображение. Если вам нужно больше кода, пожалуйста, дайте мне знать, и я отредактирую его там. Спасибо!
let firstchoice: [UIImage] = [
UIImage(named: "Appa1")!,
UIImage(named: "Appa2")!
]
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath)
{
///Right way here
///You can easily manage using this
let Vc = self.storyboard?.instantiateViewController(withIdentifier: "imageViewController") as! imageViewController
///Here you have written four Animal names in Array
///So There is going to four case 0,1,2,3 and a default case
switch indexPath.row
{
case 0:
Vc.passedImage = UIImage.init(named: firstchoice)
self.navigationController?.pushViewController(Vc, animated: true)
break;
case 1:
Vc.passedImage = UIImage.init(named: "AppA2")!
self.navigationController?.pushViewController(Vc, animated: true)
break;
case 2:
Vc.passedImage = UIImage.init(named: "AppB")!
self.navigationController?.pushViewController(Vc, animated: true)
break;
case 3:
Vc.passedImage = UIImage.init(named: "AppC")!
self.navigationController?.pushViewController(Vc, animated: true)
break;
case 4:
Vc.passedImage = UIImage.init(named: "AppD")!
self.navigationController?.pushViewController(Vc, animated: true)
break;
case 5:
Vc.passedImage = UIImage.init(named: "AppE")!
self.navigationController?.pushViewController(Vc, animated: true)
break;
Контроллер просмотра изображений:
import UIKit
import GoogleMobileAds
class imageViewController: UIViewController,GADBannerViewDelegate, UIGestureRecognizerDelegate, UIScrollViewDelegate {
var bannerView: GADBannerView!
@IBOutlet weak var scrollView: UIScrollView!
@IBOutlet weak var myImageView: UIImageView!
//var passedImage : UIImage! = nil
var passedImage : [UIImage]
override func viewDidLoad(){
super.viewDidLoad()
self.myImageView.image = passedImage
self.navigationController?.navigationBar.isHidden = false
scrollView.minimumZoomScale = 1.0
scrollView.maximumZoomScale = 5.0