Открыть действие с темой диалога, плавающей поверх текущего действия

Для этого может быть лучший подход, и если да, пожалуйста, дайте мне знать, поскольку я новичок в разработке Android...

У меня есть приложение с "основным" действием. Отсюда пользователь может нажать кнопку, чтобы открыть другое действие, где он может изменить настройки приложения. Вместо того, чтобы открывать действие на новом «экране», я хотел бы открыть всплывающее окно (модальное) поверх основного действия, которое будет содержать действие настроек. Пользователь сможет видеть главный экран за всплывающим окном настроек, но не взаимодействовать с ним, пока не нажмет «сохранить» или «отменить» в настройках.

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

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

    //Settings button
private OnClickListener oclSettingsButtonClick = new OnClickListener() {
    public void onClick(View view) {
        Intent myIntent = new Intent(view.getContext(), settingsActivity.class);
        startActivityForResult(myIntent, 0);
        finish();
    }

Любая помощь приветствуется.


person JCor83    schedule 21.05.2011    source источник


Ответы (1)


Во-первых, настройки хорошо обрабатываются и, вероятно, будет проще, если вы используете предпочтение. это из коробки не даст вам того, что вы хотите, но это приведет к значительно меньшему количеству кода для вас. вот руководство по этому вопросу: http://www.kaloer.com/android-preferences вы возможно, вы сможете использовать прозрачную тему и добиться желаемого эффекта, хотя я не пробовал.

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

http://developer.android.com/guide/topics/ui/dialogs.html#CustomDialog

http://www.helloandroid.com/tutorials/how-display-custom-dialog-your-android-application

person jkhouw1    schedule 21.05.2011
comment
Спасибо вам. Я посмотрю на активность предпочтений. - person JCor83; 21.05.2011