Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/221.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何停止活动中的循环,同时处理默认的屏幕导航返回?_Java_Android - Fatal编程技术网

Java 如何停止活动中的循环,同时处理默认的屏幕导航返回?

Java 如何停止活动中的循环,同时处理默认的屏幕导航返回?,java,android,Java,Android,} 如果我去掉finish();这将在我按下默认导航返回按钮时创建循环。 例如,如果我访问了promocode类,然后是凭单类。从vouchar类,我想通过按默认的导航返回按钮返回主类。它将像vouchar一样反向,然后再升级到主类。 但我想在默认情况下返回按钮将把我的vouchar类直接带到主类 但是在添加finish()之后;每当我按下导航返回按钮,应用程序就会退出 我想要一个解决方案…默认的导航后退按钮将像我的每一个个人帧的每一个自定义后退按钮 关键是提供正确的导航。 下面是理解任务和后台

}

如果我去掉finish();这将在我按下默认导航返回按钮时创建循环。 例如,如果我访问了promocode类,然后是凭单类。从vouchar类,我想通过按默认的导航返回按钮返回主类。它将像vouchar一样反向,然后再升级到主类。 但我想在默认情况下返回按钮将把我的vouchar类直接带到主类

但是在添加finish()之后;每当我按下导航返回按钮,应用程序就会退出


我想要一个解决方案…默认的导航后退按钮将像我的每一个个人帧的每一个自定义后退按钮

关键是提供正确的导航。 下面是理解任务和后台堆栈的步骤

为自定义活动提供反向导航的另一种方法是重写活动的onBackPressed()方法,如:

    ImageView Back = findViewById(R.id.imageView11);
    Back.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(Wallet.this, Nav.class);
            startActivity(intent);
            finish();
        }
    });

    Button cash = findViewById(R.id.button11);

    cash.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(Wallet.this, Cash.class);
            startActivity(intent);
            finish();
        }
    });


    TextView Card = findViewById(R.id.textView26);
    Card.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(Wallet.this, Card.class);
            startActivity(intent);
            finish();
        }
    });


    Button AddCard = findViewById(R.id.button12);

    AddCard.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(Wallet.this, AddedCard.class);
            startActivity(intent);
            finish();
        }
    });

    TextView promo = findViewById(R.id.textView28);

    promo.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(Wallet.this, promocode.class);
            startActivity(intent);
            finish();
        }
    });


    Button Voucher = findViewById(R.id.button13);

    Voucher.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(Wallet.this, Vouchers.class);
            startActivity(intent);
            finish();
        }
    });

}
@Override
public void onBackPressed()
{
    super.onBackPressed(); 
    startActivity(new Intent(YourCurrentActivity.this, MainActivity.class));
    finish();
}