UITextField text disappearing while typing [closed] - ios

Closed. This question needs debugging details. It is not currently accepting answers.
Edit the question to include desired behavior, a specific problem or error, and the shortest code necessary to reproduce the problem. This will help others answer the question.
Closed 5 years ago.
Improve this question
Strange behaviour observed on UITextField text disappears,
Steps:
Type text in UITextField and click home button.
Open another application (App) and click home button.
Then Open First App the UITextField in text is disappears.
Issue observed in IPhone 6s version 9.2.1. but perfectly working in simulator.

You can override this method in your custom responders to update your object's state or perform some action such as highlighting the selection. If you override this method, you must call super at some point in your implementation.
The custom Class should be similar to:
class CustomSecureTextField: UITextField {
override func becomeFirstResponder() -> Bool {
super.becomeFirstResponder()
//if !isSecureTextEntry {
// return true
//}
if let currentText = text {
insertText(currentText)
}
return true
}
}

Related

how to toggle whole color of contents in my ios application programmatically? [closed]

Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 13 hours ago.
Improve this question
I want to implement a button that inverts the background color of the app when the user presses it. I tried assigning dark and light to the overrideUserInterfaceStyle property, but it only changes the color of the navigation bar. The only answers I've found so far are to create an ancestor controller of the full controller and manage the colors globally there. Can you tell me if there is a property or method that can access the full colors of the app? Or is there another good way...
here's my code I tried but only get feature toggles color of navigation bar dark/light...
#objc func onClickSwitch(_ sender : UISwitch) {
if #available(iOS 13.0, *) {
let windowScene = UIApplication.shared.connectedScenes.first as! UIWindowScene
if sender.isOn {
print("dark mode")
windowScene.keyWindow?.overrideUserInterfaceStyle = .dark
} else {
print("white mode")
windowScene.keyWindow?.overrideUserInterfaceStyle = .light
}
}
}

Detecting Key Press/ Key Down iOS [duplicate]

This question already has an answer here:
Key up and key down enabled on ios UIKeyboard [closed]
(1 answer)
Closed 5 months ago.
I am developing a library, which will be used in an app,
where I need to know the timestamp of key pressed (key down and key up moments), in the iOS(iPhone) virtual keyboard.
I was trying to do it by inheritance from UIViewController and override pressesBegan and pressesEnded functions like here, but it turns out its only working for external physical keyboards (so like >1% users of iPhones?)
I was trying to do this by getting all the textFields:
func getAllTextFields(fromView view: UIView)-> [UITextField] {
return view.subviews.flatMap { (view) -> [UITextField] in
if view is UITextField {
return [(view as! UITextField)]
} else {
return getAllTextFields(fromView: view)
}
}.flatMap({$0})
}
and use of .addTarget method but there's no function which provide information about "key down" moment:
textFields.forEach{($0.addTarget(self, action: #selector(textFieldEditingBegin),
for: .editingDidBegin))}
textFields.forEach{($0.addTarget(self, action: #selector(textFieldDidChange),
for: .editingChanged))}
textFields.forEach{($0.addTarget(self, action: #selector(textFieldDidEnd),
for: .editingDidEnd))}
The .editingChanged method can only be translated to "key up".
The other ones, tells us about whole textField, so the moment when user "tap" on it and not the moment when he "tap" the letter in the virtual keyboard.
I have not found anything useful for me in the NotificationCenter, UIResponder or UITextFieldDelegate.
So im asking if anyone knows how can I retrieve such information from a iOS keyboard,
im not very familiar with Extension mechanism and maybe there is some other stuff im able to do in my scenario.
Thanks.
You can detect user's tap using UITextFieldDelegate
func textFieldDidBeginEditing(_ textField: UITextField) // became first responder

Swift textfield text 1 to 9 if user entered need to show alert [closed]

Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 4 years ago.
Improve this question
I am trying simple logic, I have only one textfield. into this textfield if user entered 1 to 9 I need to show alert using if.
if emailTextField.text < 0 {
print("100%")
}
UITextField's text is always a String. So if you need to check if it is a particular number, you need to cast the String value to an Int.
if let number = Int(emailTextField.text!), (0...9).contains(number) {
print("100%)
}
Note: You might want to check out the UITextFieldDelegate methods if your logic revolves around text field editing events.
yourTextField.addTarget(self, action: #selector(valueChanged(_:)), for: .valueChanged)
.
.
.
#objc func valueChanged(_ textField: UITextField) {
if let number = Int(emailTextField.text!), (0...9).contains(number) {
print("100%)
}
}
Sidenote: I have no idea what your use case is for this.

Implement Objective C code in Swift [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
I am trying to handle the pressing of the back button on a UI Navigation bar. I have an extension in objective C (https://github.com/onegray/UIViewController-BackButtonHandler) and i have bridged it to my project in Swift using the header, now I do not quite know how to implement the code in Swift. This is the implementation in C:
-(BOOL) navigationShouldPopOnBackButton {
if(needsShowConfirmation) {
// Show confirmation alert
// ...
return NO; // Ignore 'Back' button this time
}
return YES; // Process 'Back' button click and Pop view controler
}
func navigationShouldPopOnBackButton() -> Bool {
if(needsShowConfirmation) {
// Show confirmation alert
// ...
return false // Ignore 'Back' button this time
}
return true // Process 'Back' button click and Pop view controller
}

NSNotification for UIAlertController [closed]

Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 8 years ago.
Improve this question
Is there an option to observe and get the information about appearing and disappearing?
I want to grayscale my elements like apple ui-elements by appearing of UIAlertController!
Since now i found out that the "_UIBackdropViewComputeAndApplySettingsNotification" was called and contains userInfo about the appearing view.
You are going to make the UIAlertController's view appear, so how can you not know? You don't need to observe it; you're doing it (by calling presentViewController...).
That takes of what happens when the alert appears. What about when it disappears? Well, it disappears because the user tapped a button. You get to write the handler for every button in the alert. So again, you know when the alert is disappearing, because your handler is running.
The solution is, everything works automatically. You just have to implement..
override func tintColorDidChange() {
self.setNeedsDisplay()
}
..and of course working with the tintColor
Thanks matt for quick answer!
To expand on the other answers: each of your UIView subclasses should implement tintColorDidChange to be notified of the change.
Here's a sample implementation:
class someLabel : UILabel {
override func tintColorDidChange() {
let isInactive = self.tintAdjustmentMode == UIViewTintAdjustmentMode.Dimmed
if (isInactive) {
// modify subviews to look disabled
self.textColor = UIColor.grayColor()
} else {
// modify subviews to look enabled
self.textColor = self.tintColor
}
}
}
A few other good code samples (albeit in Objective-C) can be found in this SO question.

Resources