Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如果选择了特定活动,则检查单选按钮_Java_Android_Radio Button_Oncreate - Fatal编程技术网

Java 如果选择了特定活动,则检查单选按钮

Java 如果选择了特定活动,则检查单选按钮,java,android,radio-button,oncreate,Java,Android,Radio Button,Oncreate,在我的代码中,当活动打开/启动时,我试图勾选菜单中的一个单选按钮。我在onCreate方法中有一个函数,但是我得到一个错误,说int不能被取消引用。在这种情况下,我如何修复它?或者,有没有一种完全不同的方式来实现我的目标 onCreate方法 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentVi

在我的代码中,当活动打开/启动时,我试图勾选菜单中的一个单选按钮。我在onCreate方法中有一个函数,但是我得到一个错误,说int不能被取消引用。在这种情况下,我如何修复它?或者,有没有一种完全不同的方式来实现我的目标

onCreate方法

    @Override

    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_markets);
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);
    R.id.servemenu.setChecked(true);  //this what what I am using to check the radio button

    //home button

    FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
    fab.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent intent = new Intent(ActivityMarkets.this, ActivityMenu.class);
            startActivity(intent);
        }
    });

    //Don't know what this is for but I'm not gonna mess with it

    DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
    ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
            this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
    drawer.setDrawerListener(toggle);
    toggle.syncState();

    //Menu I think

    NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
    navigationView.setNavigationItemSelectedListener(this);

}
.xml菜单代码

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group android:checkableBehavior="single">
    <item
        android:id="@+id/servemenu"
        android:title="Markets We Serve" />
    <item
        android:id="@+id/federalmenu"
        android:title="Federal" />
    <item
        android:id="@+id/statelocalmenu"
        android:title="State and Local" />
    <item
        android:id="@+id/commercialmenu"
        android:title="Commercial" />
</group>

您不能直接引用按钮的操作方式

R.id.servemenu只是一个整数,用于标识视图中的单选按钮。如果确实是radiobutton的id,则必须使用R.id.servemenu检索radiobutton

你应该这样做

RadioButton rb=RadioButton findViewByIdR.id.servemenu;
rb.setCheckedtrue

谢谢大家!!有RadioButton的进口包装吗?当代码编译时,我得到了一个错误:找不到符号类RadioButton我相信它是import android.widget.RadioButton工作的:但是,现在我得到了一个NPE。你知道为什么在rb上调用setChecked会被视为空对象引用吗?如果你在调用setChecked时得到了一个NPE,这意味着单选按钮为空。您的RadioButton的ID是否在xml布局服务中?我将如何修复它?对于所有这些问题,我感到抱歉,我对java还相当陌生