Изменение проблемы ориентации экрана: onCreate - PullRequest
2 голосов
/ 05 декабря 2010

У меня проблема с изменением ориентации экрана. У меня есть действие с 2 намерениями, которое вызывается службой.

Когда я поворачиваю экран, переходя в альбомный режим, он вызывает OnCreate. Проблема в том, что у меня есть кнопка и TextField, которая обновляется через обработчик), и они больше не реагируют.

Вот так выглядит код, когда я пытаюсь также добавить кнопку в onCreate, но она не отвечает, когда представление переключается в ландшафтный режим:

public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.call);

  Button endCall = (Button) findViewById(R.id.stopCall);
  endCall.setOnClickListener(new View.OnClickListener() {
   @Override
   public void onClick(View v) {
    /// ...
   }
  });

  handleIntent(getIntent());
 }

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

Ответы [ 2 ]

2 голосов
/ 01 января 2011

См. Эту документацию для лучшей практики. configChanges - это краткосрочное решение http://android -developers.blogspot.com / 2009/02 / быстрее трафаретная ориентацию change.html

0 голосов
/ 05 декабря 2010

В вашем случае вам нужно остановить обработчик на onDestroy, чтобы он мог быть снова выполнен в onCreate.

...