2010-01-03 106 views
0

以下是我有:顯示圖像


smallURL:(@"bundle://image.jpg") 

這條線會顯示我的圖片存儲在本地路徑,沒有任何問題,一切工作正常。現在,我使用的對象,因爲我的圖片名稱將是在我的數據庫存儲,所以我想用這樣的行:


smallURL:(@"bundle://%s", [visuel lpath]) 

我的問題是「%S」它不工作我必須使用%@%I ...有人可以幫我解釋一下所有的性差異..

感謝,

回答

2
smallURL:([NSString stringWithFormat:@"bundle://%@", [visuel lpath]]) 
+0

感謝它現在的工作,但爲什麼我必須再次將NSString重新定位?我不明白。 – ludo 2010-01-03 10:50:32

+2

NSLog很特別。它支持接收格式及其參數的字符串。 smallURL只接受一個參數,一個字符串。爲了使smallURL的單個參數正確格式化,我們必須首先創建一個格式爲新的字符串,然後將生成的字符串傳遞給smallURL。 – 2010-01-03 11:05:30

1

如果lpathNSString型的,那麼你應該使用%@。每當你需要將Cocoa對象(或NSObject的任何其他後代)轉換爲其字符串表示形式時,都會使用它。

smallURL:(@"bundle://%@", [visuel lpath]) 
+0

看來工作,謝謝。現在我有另一個問題,我不知道爲什麼,當我使用你告訴我的圖片不想顯示,如果我使用NSLog(@「bundle://%@」,[visuel lpath]);圖片的路徑很好 - > bundle://image.jpg – ludo 2010-01-03 10:44:25

+0

我相信Niels Castle已經在他對Hoang的回答的評論中回答了這個問題。正確的決定是使用Hoang建議的語法。 – 2010-01-03 14:09:08