繁体   English   中英

在 Android 中,如何切换已经在一个片段中的片段以从一个片段移动到另一个片段(Java)?

[英]How do I switch which is already in a fragment to move from one fragment to another (Java) in Android?

我已经链接了一个从 Fragment1 切换到 Fragment2 的开关,但是如果再次单击该开关,我不知道如何返回到 Fragment1。

不要将开关放在片段内。 您应该在父布局中包含开关,并在单击开关时更改片段。

例如;

您将线性布局中的开关包含在该布局下方,您在其中提交片段的框架布局。

一个可能的解决方案:使用switch.setOnCheckedChangeListenertransaction.replace 例如:

public class MainActivity extends Activity implements CompoundButton.OnCheckedChangeListener {

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    fTrans.add(R.id.your_fragment_container, frag1);

    Switch switch = findViewById(R.id.switch);
    if (switch != null) {
        switch.setOnCheckedChangeListener(this);
    }
    frag1 = new Fragment1();
    frag2 = new Fragment2();
}

@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
        fTrans = getFragmentManager().beginTransaction();
        if(isChecked){
            fTrans.replace(R.id.your_fragment_container, frag2);
        }else{
            fTrans.replace(R.id.your_fragment_container, frag1);
        }
}

}

R.id.your_fragment_container是你的两个片段的布局

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM