Как справиться с изменением ориентации при отображении ProgressDialog?

Вот решение Swift:

В viewDidLoad установите делегата:

_yourTextField.delegate = self
let _acceptableCharacters = "0123456789."

func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool {

    if (string.characters.count == 0) {
        return true
    }

    if (textField == self._yourTextField) {
        let cs = NSCharacterSet(charactersInString: self._acceptableCharacters)
        let filtered = string.componentsSeparatedByCharactersInSet(cs).filter {  ![111].isEmpty }
        let str = filtered.joinWithSeparator("")

        return (string != str)
    }

    return true
}
17
задан james 12 September 2010 в 15:54
поделиться

2 ответа

Вы можете попробовать отключить изменения ориентации во время показа ProgressDialog.

в начале выполните:

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_NOSENSOR);

и включите обратно после завершения:

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);

Надеюсь, это поможет.

(Если у кого-то есть правильное решение, мне также было бы интересно: -)

6
ответ дан 30 November 2019 в 12:57
поделиться

Добавьте это в тег активности в application manifest.xml

<activity android:label="@string/app_name" android:configChanges="keyboardHidden|orientation|screenSize" android:name=".your.package"/>

2
ответ дан 30 November 2019 в 12:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: