0

i am making an app for iphone and for that i am using certain free libraries.My problem is that i want to show their complete license of nearly 4-5 pages in my application bundle so that a user can open settings in iphone and see that licensing page at one time but i am unable to do it.I have read these Specifiers for making an application bundle .

PSGroupSpecifier

PSTitleValueSpecifier

PSTextFieldSpecifier

PSSliderSpecifier

PSToggleSwitchSpecifier

PSMultiValueSpecifier

PSChildPaneSpecifier

but i want to show a page full of text like Settings->General->About->Leagl just like in iphone through PSChildPaneSpecifier .Please help me how to do this>???

Thanks

  • You may wish to read the answers to this question before you do this: http://stackoverflow.com/questions/459833/which-open-source-licenses-are-compatible-with-the-iphone-and-app-store . GPLv3 is incompatible with the iPhone SDK, older GPL will require you to open the source code of your application, and LGPL appears to require you to make available the .o object files for your application. – Brad Larson Feb 02 '10 at 14:06

4 Answers4

2

You can create the same effect as used by Apple's iWorks apps for the license > section of the settings, without using any custom preference controller. Note this works for iOS 5 on the iPad, I have not tried it elsewhere. Use a PSChildPaneSpecifier for the initial control in the root plist. This points to the name of another plist file which will be the displayed child pane. You do not add .plist to the name within the root.plist file, it is implied. This plist file must be within the settings bundle. Next, use PSGroupSpecifiers in the child pane as the controls. For each paragraph use another PSGroupSpecifier - so the thing will scroll. Only use the Title section of the PSGroupSpecifier. The next gotcha that I found, was that by putting the strings in the plist file, the text was clipped in portrait orientation, so a placeholder string needs to go in the plist file and a StringTable used to point to a strings file. Text read from the strings file is properly kerned and displays without clipping.

prniii
  • 31
  • 2
1

The iPhone's "Legal" page is a custom preference controller which you can't use (not even with undocumented methods – you need to write a preference bundle in system locations which AppStore apps can't reach at all).

If you'd like to display the license, show it in the app.

kennytm
  • 510,854
  • 105
  • 1,084
  • 1,005
0

I think you are going to need to use something like a UITextView, just make it non-editable. You can make in unobtrusive in your app but I think that is the only way to have 4-5 pages.

Adam Eberbach
  • 12,309
  • 6
  • 62
  • 114
0

I don't think there is a nice way of displaying this in the preferences bundle. Personally I would either provide a series of url links or bring the preferences into the app itself. There is a good framework on github here that you may be able to modify.

Jack
  • 3,878
  • 15
  • 42
  • 72