All i would like to do is have the user be able to enter text in uitextfield that is saved and can appear be printed in a picture in a app. So if the user enters abc the picture will be taken with abc on it. I have done everything else (have a camera take a picture with words on it and have a uitextfield save the text). The just need the text to be displayed in the photo. Thanks
On view controller a there is a uitexfield.
This is the code of view controller a.
import UIKit
class tryingViewController: UIViewController {
static let fbx2 = "standardText"
@IBOutlet weak var textext: UITextField!
let standardText = "standardText"
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
textext.addTarget(self, action: #selector(textDidChange), for: .editingChanged)
textext.text = UserDefaults.standard.value(forKey: standardText) as? String
}
func textDidChange(sender: UITextField) {
UserDefaults.standard.set(sender.text ?? "", forKey: standardText)
}
}
Here is the a picture of view controller b.
Here is the code.
import UIKit
class Camera: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate, UITextFieldDelegate {
@IBOutlet weak var cameraScreen: UIImageView!
var screenView: UIImageView!
@IBAction func Camera(_ sender: AnyObject) {
if UIImagePickerController.isSourceTypeAvailable(UIImagePickerControllerSourceType.camera){
let imagePicker = UIImagePickerController()
imagePicker.delegate = self
imagePicker.sourceType = UIImagePickerControllerSourceType.camera;
imagePicker.allowsEditing = false
self.present(imagePicker, animated: true, completion: nil)}}
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingImage image: UIImage!, editingInfo: [NSObject: AnyObject]!){
cameraScreen.image = image
self.dismiss(animated: true, completion: nil);
screenView = UIImageView()
screenView.frame = CGRect(x:0, y: 0, width: self.view.frame.width, height: self.view.frame.height)
let text = "JAVA"
let label = UILabel(frame: CGRect(x: 125, y: 400, width: self.view.frame.width, height: 300))
label.font = UIFont(name: label.font.fontName, size: 122)
label.textColor = UIColor.blue
label.alpha = 0.3
label.text = text
self.view.addSubview(screenView)
self.view.addSubview(label)
UIGraphicsBeginImageContext(self.cameraScreen.frame.size)
self.view.drawHierarchy(in: self.view.frame, afterScreenUpdates: true)
}