2015-04-29 91 views
1

我有一個問題,迅速。圖像沒有被設置爲在UIImageView的窩UIViewController

import UIKit 

class StarbucksRefreshersBeverages: UIViewController, UITableViewDelegate { 

@IBAction func doneButtonPressed(sender: AnyObject) { 
    self.dismissViewControllerAnimated(true, completion: nil) 
} 
var drink = "blah" 

var refreshersDrinks = ["Cool Lime Starbucks Refreshers", "Valencia Orange Starbucks Refreshers", "Verry Berry Hibiscus Starbucks Refreshers"] 

var refresherDrink = "blahblah" 

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int { 
    return refreshersDrinks.count 
} 

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { 

    var cell = UITableViewCell(style: UITableViewCellStyle.Default, reuseIdentifier: "starbucksRefreshersPrototypeCell") 

    cell.textLabel?.text = refreshersDrinks[indexPath.row] 

    return cell 
} 


func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) { 
    self.refresherDrink = refreshersDrinks[indexPath.row] 

    self.performSegueWithIdentifier("starbucksRefreshersToImageViewSegue", sender: self) 
} 
/* 
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 


    var detailViewController = segue.destinationViewController as RefreshersImageView 

    detailViewController.refresherDrink = self.refresherDrink 

    if self.refresherDrink == "Cool Lime Starbucks Refreshers" { 

     detailViewController.refreshersImageView.image = UIImage(contentsOfFile: "coolLime.png") 


    } 

    if self.refresherDrink == "Valencia Orange Starbucks Refreshers" { 


     detailViewController.refreshersImageView == UIImage(contentsOfFile: "valenciaOrange.png") 

    } 


} 

*/ 



override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 


    if segue.identifier == "starbucksRefreshersToImageViewSegue" { // is set in interface builder 


     let detailViewController = segue.destinationViewController as RefreshersImageView 

     if self.refresherDrink == "Cool Lime Starbucks Refreshers" { 

      detailViewController.image = UIImage(contentsOfFile: "coolLime.png") 

     } 

     if self.refresherDrink == "Valencia Orange Starbucks Refreshers" { 


      detailViewController.image = UIImage(contentsOfFile: "valenciaOrange.png") 

     } 

    } 


} 
} 

在線路

detailViewController.image = UIImage(contentsOfFile: "coolLime.png") 

我想設置下一個視圖控制器的圖像視圖,我想顯示的PNG文件。但是當我導航到視圖控制器時,圖像應該顯示,沒有圖像,我沒有得到任何錯誤。這是應該顯示圖像的另一個視圖控制器;

import Foundation 
import UIKit 

class RefreshersImageView: UIViewController { 

@IBOutlet weak var refreshersImageView: UIImageView! 
var refresherDrink = "blahblah" 
var image: UIImage? 

override func viewDidLoad() { 
    super.viewDidLoad() 

    image = refreshersImageView.image 
} 
} 

這真的是令人沮喪,我也嘗試了所有的堆棧溢出結果,但nınıı他們工作。請幫忙!

+0

您是否確定在您的項目中使用該名稱的文件? – Woodstock

+0

是的,絕對 –

回答

1

RefreshersImageView

變化:

image = refreshersImageView.image 

爲:

refreshersImageView.image = image 

另外:

  • 這是不好的做法,稱之爲一個UIViewController RefreshersImageView。這給人的印象是它只是一個小部件,而不是一個完整的視圖控制器。
  • 作爲@Woodstock狀態,請檢查您的所有圖像是否在您的目標中被選中並被複制到您的應用程序包中。
  • 檢查圖像名稱大小寫
+0

嘗試:(不工作 –

+0

是refreshersImageView連接到一個UIImageView。調試,只是通過做:'refreshersImageView.image = UIImage(contentsOfFile:「coolLime.png」)'這樣你會永遠相同圖像,但你可以肯定至少你的細節VC正在工作 –

+0

segue'starbucksRefreshersToImageViewSegue'是從你的主VC設置爲VC細節還是觸發Cell?你應該從VC連接到VC,而不是從Cell連接到VC,因爲你在代碼 –

相關問題