iOS Settings Screen UIAlertView (preferable when 'back' is pressed) - ios

In my iOS app's Settings screen, there is one setting which is quite fundamental. I wish to inform users about this with a UIAlertView.
Preferably I would display this when the back button is pressed (and thus they are finished editing their settings). However, is this possible, or even allowed by Apple? If so, how?
My second choice would be to show the UIAlertView as soon as the setting is changed, but if this is possible its not really a preference. And if it is possible, how do I do it?
Edit - 2nd August 2012 : My app has its own Settings screen in addition to the built in Settings screen, so my question applies to both screens. Also, note that the setting is a UISwitch.
Also, I preferably would like a cancel button on the UIAlertView that allows the user to NOT leave the settings screen once they have read the warning. Is this possible?

You cannot do it for the iOS Settings app, but in your own app's settings view controller you could show an alert on viewWillDisappear:
UPDATE: From the comments, you want to override the back button behaviour. I would suggest that you hide the back bar button item and create your own button. Then if the user accepts in the prompt, you call [self popViewControllerAnimated:YES];

As of yet I do not believe my aim is possible on the traditional settings screen.
On my own settings screen, a UIAlertView is possible when the back button is pressed. The solution can be found here. However, it breaks the parts of my app which automatically pop screens without the user pressing the back button.
I therefore simply have made a UIAlertView pop up when the setting itself is changed. I haven't included a 'cancel' button on the pop up.
Further alternative answers here on Stack Overflow, however, will be welcome!

Related

TextField.inputView opens custom keyboard in app

I am building keyboard app, and I am wondering if there is a possibility to open my custom keyboard when user pressing on textField within my app. Keyboard is built using storyboard.
I know that I can force textField to open number Pad, Phone pad and other Apple's keyboard options but can I open my own keyboard without going to settings and adding my 3rd party keyboard.
Thanks in advance.
No, it's not possible, You have to add keyboard once from settings and then automatically your keyboard will pop up.
if you really want your own keyboard without adding settings then you need to develop your own custom inputView.
Additional notes I have just go through better approach which might be helpful for you check here and about your second question to detect keyboard please visit here
Note: Apple will not allow you to forcefully active your own keyboard at anycast because of its policy violation.

Icons for iOS Action Extensions Disappearing After Share Button Menu Disappears

I've been working on a couple of iOS action extensions for a while, but I have noticed an odd behavior I was wondering if anyone else saw. In short, after you install and turn the extension on from the share button menu and leave the menu, it disappears from the menu.
More specifically, when you first install the extension, you expect you have to press the share button, scroll the bottom bar menu (for the action extensions) all the way to the right, press the "More" button, toggle your extension on and then press done. At that point the icon for the extension will appear and you can use it. However, the next time you want to use the action extension, the icon will not appear and you have to repeat the process, even though when you look in the "More" menu, the toggle switches for your app are already flipped on.
I wish I could add images to further elaborate here, but I can't because of StackOverflow's rules.
I have not been able to find any information on this any where, so I was hoping someone here has noticed this behavior or not. Any help on resolving this would be greatly appreciated.
This has been a bug in iOS 8.3, and has been acknowledged by Apple.
Fixed in iOS 9.
Issue on OpenRadar
How to solve:
The new share extension is NOT visible in the default list, and is CHECKED in the “More…” list. Changing any of the switches and tapping Done will show the new share extension in the default list.

Cannot enable iOS8 Custom Keyboard

I'm trying to design a custom keyboard for iOS 8. Here are my development steps:
1. Created new project (Single view)
2. Created a new target: File > New > Target, and in the iOS template group chose the Custom Keyboard template.
Then I tried to enable the keyboard based on the documentation steps, which are:
1. Run the app
2. In iOS Simulator, press home button (Command+Shift+H)
3. Go to Settings > General > Keyboard > Keyboards.
4. Tap Add New Keyboard.
5. In the Purchased Keyboards group, tap the name of your new keyboard. A modal view appears with a switch to enable your keyboard.
6. Tap the switch to enable your keyboard. A warning alert appears.
7. In the warning alert, tap Add Keyboard to finish enabling your new keyboard. Then tap Done.
My problem is in step 5. The modal view does not show a switch to activate the keyboard, it shows an empty view like bellow:
I clicked on Done button and it shows my Custom keyboard in activated list:
But when I want to use this keyboard, for example in spotlight, it won't show my keyboard
Clicking the done button will activate the keyboard. There are some definite bugs in those menus.
To change keyboards, you can also try just tapping on the button to change keyboard, rather than holding it like you were in the last screenshot.
Also, it looks like you have the language for that keyboard set as persian, and my guess would be that it is not appearing because your system language is not persian (or the text field you are typing in doesn't support persian).
I wouldn't be surprised if there are other bugs in the simulator that would affect this. I'm glad to hear you were able to get it working.
After you click done, it should install the keyboard, even if you don't see the list in the settings table.
About the keyboard not showing up - you need to kill the app before running a new keyboard. it's a known issue on the simulator.
good luck!

iOS guided access keyboard bug

I'm development an app through titanium. When I was running it on actual iPad, I got a bug that keyboard cannot close if guided access was enabled.
Scenario:
Guided Access is on in settings
Focus on a TextField, keyboard shows up
Triple click on home button, start Guided Access. (With Password). Note, the keyboard is still up for textfield.
Click "Resume" button, return back to app.
Now, if you try to dismiss keyboard, it just stuck there. And keyboard no response until next TextField or TextArea.
And this always happens. I'm not sure if this is a bug from Titanium or iOS itself. I'm trying to replicate by native objective c code.
Does anyone have clue how to fix this?
Thanks
UPDATES:
I've tried to replicate by native SDK. Nothing happened. So I guess this is a bug only for Titanium.
Finally address the problem, when you open the number pad for guided access then go back to app, it will cause the textfield lose focus. So, if user tap/click the textField, then there will be no problem.
And there is another scenario: There are two window, A and B. B has a textField, and I've set it focus when it opened. In Window A, I triple click home button and open the number pad to enter password. Go back to app, open window B. Now since I've programmatically focus the textfield, so nobody click the textField. Now if you try to dismiss the keyboard without touch/click the textfield, you will see the same bug happened before. While if you click the textField, manually re-focus it, there will be no problem.

iOS: Maintain Interactivity in centerPanel with JASidePanels when Menu Is Open

I am using JASidePanels in a universal iOS app. I make the sidebar menu visible whenever the user is in landscape mode on an iPad, but it seems that when the menu is open, the centerPanel's UI components become disabled. Tapping anywhere simply closes the menu, and then centerPanel interactivity resumes. But I want to keep the menu open and retain interactivity everywhere (similar to how Wunderlist does it).
Is this possible with JASidePanels? I have reviewed the class methods and don't see a related option, but I want to confirm before I rip it out and try a different menu system.
Thanks!
This method is the only place userInteractionEnabled is changed:
https://github.com/gotosleep/JASidePanels/blob/master/JASidePanels/Source/JASidePanelController.m#L244
Use KVO to watch this property:
https://github.com/gotosleep/JASidePanels/blob/master/JASidePanels/Source/JASidePanelController.h#L139
and whenever it changes, make sure all of these views have userInteractionEnabled = YES
https://github.com/gotosleep/JASidePanels/blob/master/JASidePanels/Source/JASidePanelController.h#L139

Resources