修改建立 Settings.bundle

rusli
Site Admin
文章: 212
註冊時間: 週三 7月 07, 2010 9:49 pm

修改建立 Settings.bundle

文章rusli » 週五 4月 22, 2011 9:32 am

Settings.bundle 下的 Root.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>StringsTable</key>
   <string>Root</string>
   <key>PreferenceSpecifiers</key>
   <array>
      <dict>
         <key>Type</key>
         <string>PSGroupSpecifier</string>
         <key>Title</key>
         <string>基本設定</string>
      </dict>
      <dict>
         <key>Type</key>
         <string>PSTextFieldSpecifier</string>
         <key>Title</key>
         <string>店點名稱</string>
         <key>Key</key>
         <string>name_preference</string>
         <key>DefaultValue</key>
         <string></string>
         <key>IsSecure</key>
         <false/>
         <key>KeyboardType</key>
         <string>Alphabet</string>
         <key>AutocapitalizationType</key>
         <string>None</string>
         <key>AutocorrectionType</key>
         <string>No</string>
      </dict>
   </array>
</dict>
</plist>



代碼: 選擇全部


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {   
   
   NSString *name = [[NSUserDefaults standardUserDefaults]
                 stringForKey:@"name_preference"];
   
   
    if(!name) {
        [self performSelector:@selector(registerDefaultsFromSettingsBundle)];       
    }
   
      // Add the view controller's view to the window and display.
      [self.window addSubview:viewController.view];
      [self.window makeKeyAndVisible];
      return YES;

}

- (void)registerDefaultsFromSettingsBundle {
    NSString *settingsBundle = [[NSBundle mainBundle] pathForResource:@"Settings" ofType:@"bundle"];
    if(!settingsBundle) {
        NSLog(@"Could not find Settings.bundle");
        return;
    }
   
    NSDictionary *settings = [NSDictionary dictionaryWithContentsOfFile:[settingsBundle stringByAppendingPathComponent:@"Root.plist"]];
    NSArray *preferences = [settings objectForKey:@"PreferenceSpecifiers"];
   
    NSMutableDictionary *defaultsToRegister = [[NSMutableDictionary alloc] initWithCapacity:[preferences count]];
    for(NSDictionary *prefSpecification in preferences) {
        NSString *key = [prefSpecification objectForKey:@"Key"];
        if(key) {
            [defaultsToRegister setObject:[prefSpecification objectForKey:@"DefaultValue"] forKey:key];
        }
    }
    [[NSUserDefaults standardUserDefaults] registerDefaults:defaultsToRegister];
    [defaultsToRegister release];
}



回到「iPhone」

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客