KOltin
@KOltin
Начинающий "писатель" app :)

Между активити при нажатии назад появляется пустая «страница»?

Есть три активити. HomeActivity - главная. OneActivity и TwoActivity
Приложение загрузилось я перешел из главного активити (HomeActivity) в другое (например OneActivity), при возврате назад между активити (OneActivity и HomeActivity) появляется пустая страница, т.е. получается чтобы вернутся из активити (OneActivity) на главную активити (HomeActivity) приходится нажимать два раза назад.

В OneActivity и TwoActivity как видно через них вызываются фрагменты.

HomeActivity
package com.example.frag4;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class HomeActivity<onClick> extends AppCompatActivity implements View.OnClickListener {

    Button btnfagtaho;
    Button btnmain;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_home);


        btnfagtaho = (Button) findViewById(R.id.btnfagtaho);
        btnmain = (Button) findViewById(R.id.btnmain);

        btnfagtaho.setOnClickListener(this);
        btnmain.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        Intent intent;

        switch (v.getId()) {
            case R.id.btnfagtaho:
                intent = new Intent(this, OneActivity.class);
                startActivity(intent);
                break;

            case R.id.btnmain:
                intent = new Intent(this, TwoActivity.class);
                startActivity(intent);
                break;

        }
    }
}


OneActivity
package com.example.frag4;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class OneActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_one);
        getSupportFragmentManager().beginTransaction().replace(R.id.mainfagtaho, new Fagtaho1()).addToBackStack(null).commit();
    }
}


TwoActivity
package com.example.frag4;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class TwoActivityextends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_two);
        getSupportFragmentManager().beginTransaction().replace(R.id.main, new Fragment1()).addToBackStack(null).commit();
    }
}
  • Вопрос задан
  • 81 просмотр
Решения вопроса 1
zagayevskiy
@zagayevskiy Куратор тега Android
Android developer at Yandex
getSupportFragmentManager().beginTransaction().replace(R.id.mainfagtaho, new Fagtaho1()).addToBackStack(null).commit();
Лучше не использовать методы, назначение которых не понимаешь. Сначала убирается транзакция из стека, потом происходит переход между активити. Убери это и будет ок.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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