gpt4 book ai didi

java - 根据单选按钮选择更改/替换 fragment

转载 作者:太空宇宙 更新时间:2023-11-04 12:50:22 25 4
gpt4 key购买 nike

我有 Activity 作为两个单选按钮我想根据单选按钮选择更改/替换 fragment

public class SignUp extends FragmentActivity implements OnCheckedChangeListener {

RadioGroup rg;
Signup_BloodBank sb; //fragment 1
Signup_User su; //fragment 2
android.support.v4.app.FragmentTransaction ft;

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

rg = (RadioGroup) findViewById(R.id.rg1);
rg.setOnCheckedChangeListener(this);

sb = new Signup_BloodBank();
su = new Signup_User();

RadioButton btn1 = (RadioButton)findViewById(R.id.rbBloodBank);
btn1.setChecked(true);
getSupportFragmentManager().beginTransaction().add(R.id.linear2, sb).commit();


}

@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {

ft = getSupportFragmentManager().beginTransaction();
switch (checkedId) {
case R.id.rbBloodBank:
ft.replace(R.id.linear2,sb);
case R.id.rbUser:
ft.replace(R.id.linear2,su);
break;

default:
break;
}
ft.commit();
}

}

fragment 1

public class Signup_BloodBank extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// TODO Auto-generated method stub
container.removeAllViews();
return inflater.inflate(R.layout.fragment_sing_up__bb, null);
}

}

fragment 2

公共(public)类 Signup_User 扩展 Fragment {
@覆盖
public View onCreateView(LayoutInflater inflater, ViewGroup 容器,
bundle 已保存实例状态) {
容器.removeAllViews();
return inflater.inflate(R.layout.fragment_sign_up__user, null);
}
}

最佳答案

如果没有对您所面临的问题进行更详细的解释,我将假设它不适合您。

粗略浏览一下,下面的代码在 .replace 之后缺少 .commit() 。

case R.id.rbBloodBank:
ft.replace(R.id.linear2,sb);
case R.id.rbUser:
ft.replace(R.id.linear2,su);

关于java - 根据单选按钮选择更改/替换 fragment ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35890958/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com