求大神解决,安卓中radioButton setChecked(true);空指针错误

public class MainActivity extends FragmentActivity implements RadioGroup.OnCheckedChangeListener{

private RadioGroup rg_tab_bar;
private RadioButton channel1;

private FragmentManager fManager;
private MyFragment1 fg1;
private MyFragment2 fg2;
private MyFragment3 fg3;
private MyFragment4 fg4;
private MyFragment5 fg5;

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

    rg_tab_bar = (RadioGroup)findViewById(R.id.rg_tab_bar);
    rg_tab_bar.setOnCheckedChangeListener(this);

    //获取第一个单选按钮,并设置其为选中状态
    channel1=(RadioButton)findViewById(R.id.rb_channel1);
    channel1.setChecked(true);

    fManager = getSupportFragmentManager();
}


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

    FragmentTransaction fTransaction = fManager.beginTransaction();
    hideAllFragment(fTransaction);

    switch (checkedId){
        case R.id.rb_channel1:
            if(fg1 == null){
                fg1 = new MyFragment1();
                fTransaction.add(R.id.ly_content,fg1);
            }else{
                fTransaction.show(fg1);
            }
            break;
        case R.id.rb_channel2:
            if(fg2 == null){
                fg2 = new MyFragment2();
                fTransaction.add(R.id.ly_content,fg2);
            }else{
                fTransaction.show(fg2);
            }
            break;
        case R.id.rb_channel3:
            if(fg3 == null){
                fg3 = new MyFragment3();
                fTransaction.add(R.id.ly_content,fg3);
            }else{
                fTransaction.show(fg3);
            }
            break;
        case R.id.rb_channel4:
            if(fg4 == null){
                fg4 = new MyFragment4();
                fTransaction.add(R.id.ly_content,fg4);
            }else{
                fTransaction.show(fg4);
            }
            break;
        case R.id.rb_channel5:
            if(fg5 == null){
                fg5 = new MyFragment5();
                fTransaction.add(R.id.ly_content,fg5);
            }else{
                fTransaction.show(fg5);
            }
            break;
    }
    fTransaction.commit();
}

//隐藏所有Fragment
private void hideAllFragment(FragmentTransaction fragmentTransaction){
    if(fg1 != null)fragmentTransaction.hide(fg1);
    if(fg2 != null)fragmentTransaction.hide(fg2);
    if(fg3 != null)fragmentTransaction.hide(fg3);
    if(fg4 != null)fragmentTransaction.hide(fg4);
    if(fg5 != null)fragmentTransaction.hide(fg5);
}

}

Caused by: java.lang.NullPointerException
at com.rong.shop.myshop.home.MainActivity.onCheckedChanged(MainActivity.java:43)
at android.widget.RadioGroup.setCheckedId(RadioGroup.java:174)
at android.widget.RadioGroup.access$600(RadioGroup.java:54)
at android.widget.RadioGroup$CheckedStateTracker.onCheckedChanged(RadioGroup.java:358)
at android.widget.CompoundButton.setChecked(CompoundButton.java:130)
at com.rong.shop.myshop.home.MainActivity.onCreate(MainActivity.java:34)
at android.app.Activity.performCreate(Activity.java:5231)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2169)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2271) 
at android.app.ActivityThread.access$800(ActivityThread.java:144) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1205) 
at android.os.Handler.dispatchMessage(Handler.java:102) 
at android.os.Looper.loop(Looper.java:136) 
at android.app.ActivityThread.main(ActivityThread.java:5146) 
at java.lang.reflect.Method.invokeNative(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:515) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:732) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:566) 
at dalvik.system.NativeStart.main(Native Method) 

我把channel1=(RadioButton)findViewById(R.id.rb_channel1);
channel1.setChecked(true);这两行去掉以切正常
这是什么问题?

低级错误。

fManager = getSupportFragmentManager(); 还没有创建成功,你就用到了。
把这行代码放到channel1.setChecked(true); 前面。

错误在这一行:FragmentTransaction fTransaction = fManager.beginTransaction();
碎片事物对象是你点击后创建的,里面根本是个空的,点击之后你才加的
在onCreat里面就你先把 第一个单选按钮,并设置其为选中状态 能不报空指针?