XML布局
<RadioGroup
android:layout_gravity="bottom"
android:id="@+id/group"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<RadioButton
android:id="@+id/button1"
android:layout_weight="1"
android:text="One"
android:button="@null"
android:gravity="center"
android:textSize="30dp"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<RadioButton
android:id="@+id/button2"
android:layout_weight="1"
android:text="Two"
android:button="@null"
android:gravity="center"
android:textSize="30dp"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</RadioGroup>
<LinearLayout
android:id="@+id/line"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
</LinearLayout>
Java代码
public class MainActivity extends AppCompatActivity {
private RadioGroup group;
private LinearLayout line;
private BlankFragment blankFragment;
private BlankFragment2 blankFragment2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
}
private void initView() {
group = (RadioGroup) findViewById(R.id.group);
line = (LinearLayout) findViewById(R.id.line);
FragmentManager supportFragmentManager = getSupportFragmentManager();
final FragmentTransaction fragmentTransaction = supportFragmentManager.beginTransaction();
blankFragment = new BlankFragment();
blankFragment2 = new BlankFragment2();
fragmentTransaction.add(R.id.line,blankFragment);
fragmentTransaction.add(R.id.line,blankFragment2);
fragmentTransaction.hide(blankFragment2);
fragmentTransaction.commit();
group.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup radioGroup, int i) {
switch (i){
case R.id.button1:
FragmentManager supportFragmentManager1 = getSupportFragmentManager();
FragmentTransaction fragmentTransaction1 = supportFragmentManager1.beginTransaction();
fragmentTransaction1.show(blankFragment);
fragmentTransaction1.hide(blankFragment2);
fragmentTransaction1.commit();
break;
case R.id.button2:
FragmentManager supportFragmentManager2 = getSupportFragmentManager();
FragmentTransaction fragmentTransaction2 = supportFragmentManager2.beginTransaction();
fragmentTransaction2.show(blankFragment2);
fragmentTransaction2.hide(blankFragment);
fragmentTransaction2.commit();
}
}
});
}
}
碎片代码
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View inflate = inflater.inflate(R.layout.fragment_blank, container, false);
View button1 = inflate.findViewById(R.id.framentButton1);
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(getActivity(), "这是Fragment的按钮1!", Toast.LENGTH_SHORT).show();
}
});
return inflate;
}