In App settings tableview from Settings bundle - ios

I want to create a TableView which is automatically generated from the Settings.bundle. There used to be a framework InAppSettings but this isn't working with iOS 7 and up. Is there any other code/tutorial for this?

I have been searching around and couldn't find a boilerplate solution so created my own code for doing this. It supports the setting types Title, Group, Text Field, Multi Value and Toggle Switch.
It does NOT SUPPORT Slider.
This solution does support portrait AND landscape mode and can also handle changing over device orientations.
I have published the code and readme on my GIT.
https://github.com/KingIsulgard/iOS-InApp-Settings-TableView/blob/master/README.md

Related

is it possible to change the LaunchScreen Storyboard according to the country/region or default language of device?

i am developing an iOS app in which i want to show the LaunchScreen/SplashScreen according to the user's desired region or the default language of device amongst the other LaunchScreen stroyboards that i have made, i searched a lot but nothing much helped me so is this possible?
Thanks in advance!!
Who say It's not possible
Select project and add localization as below image
Add any language
Select desired storyboards
And here you can see storyboard for different languages.
---------------------------------- Test your localization --------------------
Edit your target scheme
Change Application language as below images and then run your app
Unfortunately this isn't something you can do.
According to Apple's documentation on Launch Screens, the launch screen should not contain any branding or text, so therefore can't be localised:
Avoid including text on your launch screen. Because launch screens are static, any displayed text won’t be localized.
If you want some localised text, you will have to present a custom view controller as your initial view controller as that will be localisable as any other view controller.
Yes, it is possible. See here
An iOS application should be internationalized and have a
language.lproj folder for each language it supports. In addition to
providing localized versions of your application’s custom resources,
you can also localize your launch images by placing files with the
same name in your language-specific project directories.
It's not possible.But you can mimic this scenario what just ankit said.
Keep the launch screen blank and didFinishLaunchingWithOptions function create a view controller with region specific content.
Below thread might help you.This was basically to add animation and your's quest was region specific but logic is same though. :)
how-to-add-animation-to-launch-screen-in-ios-9-3-using-objective-c

Multiple keyboard layouts in an iOS keyboard extension

I'm currently working on a keyboard extension for iOS, and am now wondering how to integrate multiple layouts support into the system settings.
In the system settings, the default en_US keyboard has an additional menu (indicated by a arrow to the right), where you can choose from multiple keyboard layouts, as you can see in the screenshot from the iOS simulator below (iOS 9.1 13B137)
Can this be achieved with a custom keyboard extension, too? I can't find any documentation on it. (Which may mean that it either isn't possible using public APIs or I am too stupid to use Google.) I've searched quite a lot online, but most of what I find is about setting the keyboard locale in the Info.plist file or instructions on how to enable the system keyboard in different languages (which are registered as different keyboards), which I would like to avoid.
I can see an alternative, if this doesn't work, which would be to basically create multiple keyboard extensions in one wrapping app, which include the same code base, but define other layouts. However, this would look rather ugly, clutter up the code, and people will have to enable each layout individually, which, from my point of view, isn't the most user-friendly approach. As stated above, iOS ships with different keyboards for different languages, but I'm trying to provide multiple keyboard layouts for the same language, so this is not what I want.
This doesn't appear to be directly supported. Like you said, other third-party keyboards are stepping around this issue by providing alternate keyboard layouts as a function within the keyboard itself.
For example, Swype allows QWERTY/AZERTY/QWERTZ layout changes by long-pressing on the spacebar.

Making Apple style settings view

I want to make settings in my application like Apple Settings. How can I make settings in such style?
In my mind I need TableView + custom Cells with Images & Switches, but it’s very difficult way to go. I think that XCode has easier and more standart way to do that
Update I'm talking about creating custom in-app settings view, not about Settings.bundle
If you want to do it in the settings app then you need to look up about settings bundles: https://developer.apple.com/library/ios/documentation/Cocoa/Conceptual/UserDefaults/Preferences/Preferences.html
If you want to have it look like the settings app but be within your app then I'd recommend InAppSettingsKit: http://www.inappsettingskit.com
I'm newbie, so i didn't know how to do ViewController like Apple Settings inside application. Now i know that, so answering on my question.
You can make settings in your application in 2 ways:
Make settings via settings.bundle, that settings will appear in Settings.app (not in your app). More at: https://developer.apple.com/library/ios/documentation/Cocoa/Conceptual/UserDefaults/Preferences/Preferences.html.
Make UITableViewController and there you can customize cells to appear like native Apple Settings.

How to develop dynamic iOS settings menu

if you are developing Android apps, you can just create a PreferenceScreen/Activity and then link some preference items which are declared in a xml file to that screen. So you can build different settings menus and call them from different places in your app. They all use the same style and the same mechanism to save the settings chosen.
I was just wondering, that there is no such function in iOS. We have to call many different settings menus in our app, so how do I archive this? Is it better to design one dynamic settings screen which you can call from anywhere in your app (filled with different information each time), or should we use one big settings menu where all the app-settings live. Is it possible then, to simply jump to "submenus" of this big settings menu?
Should I use iOS Settings Bundle to generate the menu structure in files and then display them in an tableview?
I could find some Settings-Kits like InAppSettingsKit but I don't like to use an open source library for such an important function.
The settings bundle is the right way to add settings to your app.
It's a bit unusual to access settings from within an iOS app, but if you're sure you want to do so then InAppSettingsKit is a good a way to make the in-app settings as similar to the settings app as possible. The fact that it's open source shouldn't put you off - much of the iOS toolchain is open source.
I did a similar thing where I have an enum of menu modes. Each time the a table view cell is selected it changes the mode and redraws the table view. conditionals in numberOfRowsInSection: and numberOfSections: change the layout of the table and conditionals in cellForRowAtIndexPath: change the content, all based on the new mode set. I then spun the content of the table for each mode out into a JSON file and at the beginning read that into a Dictionary which forms the data structure that the table reads from.
I chose JSON as it's easily parsable with NSJSONSerialization

iOS - How to build a subview with "Passcode Lock" look - like in a settings.bundle

I would like to have a subview in settings.bundle which works like the Passcode Lock section in settings -> general.
More specifically, I would like to have a subview with the functionality that I can change an access key used in my app, asking for the old one to change for a new one.
Some one have some code, clue, tutorial?
Thanks in advance.
Have you looked at the apple documentation? It explains how to do this.
http://developer.apple.com/library/ios/#DOCUMENTATION/Cocoa/Conceptual/UserDefaults/Preferences/Preferences.html
Or check this tutorial http://www.informit.com/articles/article.aspx?p=1846575&seqNum=12
If you are wanting to make it look JUST LIKE the passcode lock screen it will be hard to do. Apple limits what a developer can do to the settings menu for their application. You could just put 4 text boxes on the screen but it won't be able to automatically go to the next box since you cannot add code to your settings bundle.

Resources