Мерцание экрана Android при запуске Activity - PullRequest
0 голосов
/ 07 февраля 2019

Я начинаю действие с startActivityForResult() и отправляю ему дополнительное, затем закрываю второе действие и возвращаюсь к предыдущему, отправляя данные обратно.

  • Только при запуске второго действия (и без возврата к первому);

и

  • Только если программная клавиатура открыта

и

  • Только на корневых устройствах или эмуляторах,

Это странноповедение происходит.

image

I've tried the solutions posted here: Мигающий экран при переходе изображения между действиями и здесь: Запуск действия при условии вызывает мерцание на экране , но безуспешно.

Вот (тривиальный) код.Между прочим, это (конечно) происходит на Java или Kotlin (предоставляется);и это также происходит, если я вызываю startActivity () вместо startActivityForResult ()

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        btn_main.setOnClickListener { launchSecondActivity() }
    }

    private fun launchSecondActivity() {
        Intent(this, SecondActivity::class.java).run {
            putExtra(EXTRA_MESSAGE, editText_main.text.toString())
            startActivityForResult(this, RETURN_MESSAGE_CODE) 
            Log.d("MainActivity", "Sending ${this.extras}")
            // clean the editText
            editText_main.setText("")
        }
    }
}

1 Ответ

0 голосов
/ 07 февраля 2019

Когда вы запускаете вторую активность, клавиатура все еще видна и перемещает раскладку вверх, пока она не закроется.Попробуйте выполнить в манифесте своей деятельности

<activity android:windowSoftInputMode="adjustResize"> </activity>

AdjustResize не будет перемещать панель инструментов вверх, но изменит размер окна, поэтому, надеюсь, экран не будет мерцать.Если это не помогает запустить операцию с задержкой, чтобы полностью закрыть клавиатуру.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...