2013-01-18 77 views
2

最近我一直在使用一個優秀的框架開發一個Cydia的調整(Theos by the great Dustin Howett),我想知道是否有任何方法可以在優化包中調整單元格。無論它是否需要私有API,因爲這是針對越獄環境。任何幫助,鏈接或引用非常感謝。我正在使用私人框架(Preferences.framework)如何灰顯ios設置包(PreferenceLoader)中的特定單元格?

回答

1

我沒有與我的越獄手機,所以我不能測試這個,但如果你看at the Preferences docs on iphonedevwiki,你會看到有一個標誌會灰色偏好項目(enabled)。所以,你可能會使用的代碼塊在您的喜好plist文件是這樣的:如果你看一下the preference loader docs

 <dict> 
     <key>cell</key> 
     <string>PSSwitchCell</string> 
     <key>default</key> 
     <true/> 
     <key>defaults</key> 
     <string>com.mycompany.myapp</string> 
     <key>key</key> 
     <string>wifi_location</string> 
     <key>label</key> 
     <string>WiFi Location</string> 
     <key>enabled</key>     
     <false/>       <!-- gray out this item --> 
    </dict> 

,你看,你也可以注入代碼到Preferences.app,這可能會讓你設置此標誌動態(可能需要如果你是調整一個不是你的應用程序)。

See more on this here

我會嘗試後對此進行測試,並希望,更新這個答案。

+0

@SuperDev,對。如果你在plist文件中有' id SomeSpecifierId',那麼你可能會得到與它相對應的'PSSpecifier'。或者,您可以遍歷所有說明符並查找正確的標籤。然後,在你的'PSSpecifier'實例中,使用'setProperty:forKey:'將'enabled'鍵的值(屬性)更改爲'NO'(或者'[NSNumber numberWithBool:NO]') – Nate

+0

我會這樣想,但查看API,'setProperty:'想要一個'id'值,所以它可能需要'[說明符setProperty:[NSNumber numberWithBool:NO] forKey:@「enabled」]'。我現在正在切換語言,不記得自動裝箱是否在Objective-C中工作:/ – Nate

+0

@SuperDev,另外,我不清楚你是否自己創建了這個Preference Bundle,以供你的調整使用,或者您是否在調整已有應用程序或偏好套件的現有應用程序。這會影響你如何得到這個東西。但是,也許你已經弄清楚了這一部分,只需要知道要使用什麼代碼,只要你已經將你的**代碼**正確地掛接到Preferences.app中。 – Nate

相關問題