android-fragments 从第二个活动按下返回主页按钮时,未返回活动中的相同片段

g0czyy6m  于 2022-11-14  发布在  Android
关注(0)|答案(1)|浏览(144)

在我的项目中,给出了2个活动-主活动和第二个活动。在我的主活动中,我有四个片段,在第三个片段中,有一个按钮用于转到第二个活动。

我将实现下面的代码以返回

**这段代码回到我的主活动在家里片段。但我经历了第三个fragment.so我想回到我的第三个片段。**请编码员帮助我解决这个问题。
另外,当我从一个片段转到另一个片段并想返回到同一个片段时,请帮助我。

在清单中

<activity
            android:name=".SecondActivity"
            android:parentActivityName=".MainActivity"
            android:exported="false" />

第三个片段

binding.goToSecondActivity.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent a = new Intent(getActivity(), SecondActivity.class);
                a.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                startActivity(a);
            }
        });

在第二个活动中

public class SecondActivity extends AppCompatActivity {
    ActivitySecondBinding binding;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        binding = ActivitySecondBinding.inflate(getLayoutInflater());
        setContentView(binding.getRoot());
        getSupportActionBar().setTitle("Second Page");
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);

       // code here
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            // Respond to the action bar's Up/Home button
            case android.R.id.home:
                NavUtils.navigateUpFromSameTask(this);
                return true;
        }
        return super.onOptionsItemSelected(item);
    }

    @Override
    public void onBackPressed() {
        super.onBackPressed();
    }
}
ohfgkhjo

ohfgkhjo1#

You should define a class, with a method getInstance accessible globally, that contains the last fragment visited, when you press back you should use the fragment manager to recreate the last fragment (found in the new class) and then, looking at the model of the selected fragment, repopulate it with the old data (if there are inputs/non static datas in the fragment)

相关问题