2013-01-21 71 views
0

我有「經典」的錯誤:的UIImage無法識別的選擇發送到實例

unrecognized selector sent to instance.

如果我通過其他類似的問題,閱讀應該是內存相關,但我不能找出我在做什麼錯。

這是我嘗試做:

  • 裁剪圖像
  • 給圖像圓角

我用的輝煌code of Trevor

這是我的代碼:

roundedCornerImage:borderSize:給0麻煩了

NSInteger my_borderSize = 0.1; 
UIImage *Image_large = [image_sel croppedImage:CGRectMake((my_width/2) -(my_height*0.66)/2, 0, my_height*0.66, my_height) ]; 
UIImage *roundedCornerImage_temp = [Image_large roundedCornerImage:0.8 borderSize:my_borderSize]; 
+0

你能從.M後從.H和定義的聲明所以我們可以看到roundedCornerImage中還有什麼發生:borderSize – Steve

回答

1

該方法不在Apple的UIImage類中。它們是UIImage的擴展名,由您鏈接的代碼編寫。

你需要確保的UIImage + RoundedCorner.h的UIImage + RoundedCorner.m添加到您的Xcode項目,然後在要使用roundedCornerImage:borderSize:類,你應該

#import "UIImage+RoundedCorner.h" 

此外,我注意到你通過了cornerSizeborderSize的十進制值。根據Trevor的API,這些值應該是NSInteger值。我猜想那些顯示,但顯然,他將其限制爲整數值。

更新:也確保了UIImage的+ RoundedCorner.m文件中列出的編譯源代碼

enter image description here

+0

我所要做的是以下內容:刪除.m和.h文件並再次添加它們。儘管在classes目錄中可見的文件有錯誤。這可能是由於前段時間將項目升級到新的sdk造成的嗎?不管怎樣,謝謝。 – user1926467

+0

@ user1926467,這是可能的。另外,在Xcode中,需要理解這些文件(特別是.m)將被**編譯**。你可以通過點擊你的項目,然後構建** Target **,然後在** Build Phases **選項卡上查看** Compile Sources **來查看。請參閱上面的更新以獲取截圖。 – Nate

相關問題