2011-06-08 24 views
0

當我添加一個plists文件到我的XCode項目時,我的iPad應用程序似乎無法讀取它。iPad不讀我的plists

例如:我的項目文件夾(xproj文件所在的地方)中有massCategories.plist。在我的plist中是下面的代碼:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
<dict> 
    <key>Item 1</key> 
    <dict> 
     <key>Key 1</key> 
     <string>Value 1</string> 
     <key>Key 2</key> 
     <string>Value 2</string> 
    </dict> 
    <key>Item 2</key> 
    <dict> 
     <key>Key 3</key> 
     <string>Value 3</string> 
     <key>Key 4</key> 
     <string>Value 4</string> 
    </dict> 
</dict> 
</plist> 

在我的視圖控制器我有以下方法:

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    NSBundle *mainBundle = [NSBundle mainBundle]; 
    NSString *plistData = [mainBundle pathForResource:@"MassCategories" ofType:@"plist"]; 
    NSArray *massCategories = [[NSArray alloc] initWithContentsOfFile:plistData]; 
    // breakpoint 
} 

在運行時(和「暫停」在斷點處),massCategories包含零。 將plist文件添加到其他文件夾似乎不起作用(或者我必須使用錯誤的文件夾,這很可能:-))。

有什麼建議嗎?

回答

0

Got it!

剛剛更新的plist使得主要元素(試圖導入它作爲一個數組的時候,就像我應該預期)是一個數組:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
<array> 
... 
</array> 
</plist> 
1

確保你得到你的冠名權以及。你說這個文件叫做'massCategories.plist',但是你試圖加載@「MassCategories」。 iOS區分大小寫。

+0

確實。而從XCode(4)內,我還沒有找到一種方法來重命名文件... – vstrien 2011-06-08 11:53:34

+0

只需點擊兩次文件的名稱。 – Luke 2011-06-08 13:06:54

+0

我的意思是我沒有找到一種方法來改變這種情況:當改變大小寫時,XCode會抱怨文件已經存在.. – vstrien 2011-06-17 09:19:19