2017-09-23 50 views
2

工作,這是基本的代碼,我用它來添加一個名爲「Background.png」到UIImageView的圖像:自從上次的Xcode更新我無法與圖像

UIImageView *imageView = [[UIImageView alloc] init]; 

imageView.image = [UIImage imageNamed:@"Background.png"]; 

imageView.frame = CGRectMake(0.0, 0.0, self.view.frame.size.width, self.view.frame.size.height); 

[self.view addSubview:imageView]; 

自從上次的Xcode更新資源無法加載。

我試圖在iPhone上運行6 - iOS的10.3和模擬器 - iOS的11.0

因爲儘管iOS的部署目標是10.3版本的模擬器上的iOS 11.0

運行某些原因,該圖像是有,在與該項目名稱相同的文件夾中:「Background.png」

我一直在做同樣的事情多年,現在它已停止工作。

任何人都有類似的問題?

+0

你沒有實際說明具體問題是什麼。你想說'[UIImage imageNamed:@「Background.png」];'是否返回'nil'? – rmaddy

+0

圖像不顯示。只有UIImageView的背景顏色顯示爲根本沒有圖像。如果我設置imageView.backgroundColor = [UIColor redColor];那麼我只看到一個紅色的屏幕,沒有別的。 – Vulkan

+0

這不能回答我的問題(認爲它提示答案)。最有可能的是'[UIImage imageNamed:@「Background.png」];'正在返回'nil',這意味着您的'Background.png'圖像不在您的應用程序包中。 – rmaddy

回答

1

您可能想要利用Assets.xcassets的用途。把你的資產放在那裏,你可以很容易地使用你的圖片。請注意,您不必將圖片的文件擴展名。這很容易,就像這樣:

UIImage *markerImage = [UIImage imageNamed:@"marker"]; 
UIImageView *imageView = [[UIImageView alloc] initWithImage:markerImage]; 
[imageView setFrame:CGRectMake(0, 0, 100, 100)]; 
[self.view addSubview:imageView]; 

我在Assets.xcassets命名標記的圖像。

編輯:這是測試,我做了一個Objective-C的項目只是爲了這個問題:)

+0

使其工作的唯一方法。謝謝! – Vulkan

0

我有同樣的問題,我解決了這個問題如下:

只需選擇你的形象,然後檢查在「目標會員」(在右側窗口中)鏈接到您的項目名稱的框

它工作嗎? 有需要的屏幕截圖: https://i.stack.imgur.com/gTOGJ.png

+0

我跟着你的答案,圖像仍然是零。 – Vulkan