What is the normal Crash-free users level for Apps
Post
Replies
Boosts
Views
Activity
ViewController.swift
Adding text through uitextview text property have strange effect in ios 16.
Have:
uitextview with some text that bigger than uitextview height
The end of text is visible (so the start of the text is not visible)
Testing:
Add some string ("a") to the end of the uitextview (txtView.text = txtView.text + "a")
Expected:
The txtView shows the the old text + "a"
Observed:
After one or two adding the "a" the old text disappeared from the text view
After tapping in the textview the text appear
I have attached the small project with uitextview and two buttons: button left and button right.
Button right - adding the letter "a" to the end of the text
Button left - simply removes the soft keyboard if its appear
This project works correct in ios 15 (emulator and real device)
and works wrong in ios 16 (emulator and real device)
in iOS 17 (21A5326A) audioSession.setCategory(.playAndRecord, mode: .default,options: .allowBluetooth) does not set input to bluetooth. In iOS 16 it does.
Here the steps to reproduce:
Create project with storyboard.
in info.plist add
NSMicrophoneUsageDescription
Your microphone will be used to record your speech when you press the "Start Recording" button.
put in ViewController:
import UIKit
import Speech
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
override public func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
AVAudioSession.sharedInstance().requestRecordPermission { granted in
}
}
func startAudioSession(){
let audioSession = AVAudioSession.sharedInstance()
do {
try audioSession.setCategory(.playAndRecord, mode: .default,options: .allowBluetooth)
try audioSession.setActive(true,options: .notifyOthersOnDeactivation)
print(audioSession.currentRoute.description)
} catch {
}
}
@IBAction func btnTap(_ sender: UIButton) {
startAudioSession()
}
}
put button on the Main.storyboard and link it to btnTap
Connect bluetooth headset to iphone, start the App and tap button.
in iOS 16 see the current route - bluetooth.
in iOS 17 see the current route - speaker
What is the string representation (or another object) for this property is applied?
Can we use Range(txtView.selectedRange, in: txtView.text) to get valid indices in UITextView.text?
What is the difference of UITextView.selectedRange to UITextView.SelectedTextRange?