Specifiers
Root.plist
is written in xml syntax, you’ll see that this is nothing but a simple array of dictionaries representing various specifiers. A very good list of them is reported on iPhoneDevWiki , but let’s see some of the most important ones.
This website detects the darkmode , and in particular this page allows you to see the various cells in light/dark mode just my switching your system dark mode (supported by iOS, macOS and Windows). Try it out!
Toggle the switch to watch the values as active:
Down here I’m going to report them in order of appearence in the screenshot.
RootListController
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<plist version= "1.0" >
<dict>
<key> items</key>
<array>
<dict>
<key> cell</key>
<string> CELL_TYPE</string>
<key> PROPERTY</key>
<string> VALUE</string>
</dict>
</array>
<key> title</key>
<string> Preference Specifiers</string>
</dict>
</plist>
PSGroupCell
Cells between PSGroupCell
s will be grouped. You can add Headers and Footers.
1
2
3
4
5
6
7
8
9
10
<dict>
<key> cell</key>
<string> PSGroupCell</string>
<key> label</key>
<string> Header</string>
<key> footerText</key>
<string> Footer</string>
<key> footerAlignment</key>
<integer> 1</integer>
</dict>
PSSwitchCell
1
2
3
4
5
6
<dict>
<key> cell</key>
<string> PSSwitchCell</string>
<key> label</key>
<string> Switch</string>
</dict>
PSSpinnerCell
1
2
3
4
5
6
<dict>
<key> cell</key>
<string> PSSpinnerCell</string>
<key> label</key>
<string> Loading</string>
</dict>
PSSliderCell
1
2
3
4
5
6
<dict>
<key> cell</key>
<string> PSSliderCell</string>
<key> showValue</key>
<true/>
</dict>
1
2
3
4
5
6
<dict>
<key> cell</key>
<string> PSButtonCell</string>
<key> label</key>
<string> Button</string>
</dict>
PSSegmentCell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<dict>
<key> cell</key>
<string> PSSegmentCell</string>
<key> label</key>
<string> Button</string>
<key> validTitles</key>
<array>
<string> One</string>
<string> Two</string>
<string> Three</string>
<string> Four</string>
<string> Five</string>
<string> Six</string>
</array>
<key> validValues</key>
<array>
<string> 1</string>
<string> 2</string>
<string> 3</string>
<string> 4</string>
<string> 5</string>
<string> 6</string>
</array>
</dict>
PSLinkListCell
It brings to an external view, showing the validTitles
:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<dict>
<key> cell</key>
<string> PSLinkListCell</string>
<key> label</key>
<string> List</string>
<key> validTitles</key>
<array>
<string> One</string>
<string> Two</string>
<string> Three</string>
<string> Four</string>
<string> Five</string>
<string> Six</string>
</array>
<key> validValues</key>
<array>
<string> 1</string>
<string> 2</string>
<string> 3</string>
<string> 4</string>
<string> 5</string>
<string> 6</string>
</array>
</dict>
PSGiantCell
It brings to an external controller, in this case TPBRootListController
.
1
2
3
4
5
6
7
8
<dict>
<key> cell</key>
<string> PSGiantCell</string>
<key> label</key>
<string> Giant Cell (external view)</string>
<key> detail</key>
<string> TPBRootListController</string>
</dict>
PSLinkCell
It brings to an external controller, in this case TPBRootListController
.
1
2
3
4
5
6
7
<dict>
<string> PSLinkCell</string>
<key> label</key>
<string> Link (external view)</string>
<key> detail</key>
<string> TPBRootListController</string>
</dict>
PSEditTextCell
1
2
3
4
5
6
7
8
<dict>
<key> cell</key>
<string> PSEditTextCell</string>
<key> label</key>
<string> TextEdit</string>
<key> placeholder</key>
<string> Default text</string>
</dict>
PSSecureEditTextCell
1
2
3
4
5
6
7
<dict>
<string> PSSecureEditTextCell</string>
<key> label</key>
<string> Password</string>
<key> placeholder</key>
<string> Dots will appear</string>
</dict>
PSStaticTextCell
1
2
3
4
5
6
<dict>
<key> cell</key>
<string> PSStaticTextCell</string>
<key> label</key>
<string> Static text</string>
</dict>
// Devices.css by github.com/picturepan2