Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/203.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 - Fatal编程技术网

Java 我有一个错误:错误:无法访问语句错误:错误:缺少返回语句

Java 我有一个错误:错误:无法访问语句错误:错误:缺少返回语句,java,android,Java,Android,我有一个错误: 错误:无法访问语句错误:错误:缺少返回语句 它正在运行以下代码: public class MainActivity extends AppCompatActivity { private DrawerLayout mDrawerlayout; private ActionBarDrawerToggle mToggle; @Override protected void onCreate(Bundle savedInstanceState) {

我有一个错误:

错误:无法访问语句错误:错误:缺少返回语句

它正在运行以下代码:

public class MainActivity extends AppCompatActivity {

    private DrawerLayout mDrawerlayout;
    private ActionBarDrawerToggle mToggle;

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

        mDrawerlayout = (DrawerLayout) findViewById(R.id.drawerLayout);
        mToggle = new ActionBarDrawerToggle(this,mDrawerlayout,R.string.open,R.string.close);

        mDrawerlayout.addDrawerListener(mToggle);
        mToggle.syncState();

        getSupportActionBar().setDisplayHomeAsUpEnabled(true);

    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        return super.onOptionsItemSelected(item);
        if(mToggle.onOptionsItemSelected(item)){
           return true;
        }
    }
}

调用
mtogle.onoptionItemSelected(项目)
后,调用super.onoptionItemSelected(项目)

在OnOptions ItemSelected()中,如果()是无法访问的代码,请使用下面的代码

@Override
public boolean onOptionsItemSelected(MenuItem item) { 
if(mToggle.onOptionsItemSelected(item)){
   return true;
}else{ 
   return false;
 }
}
在代码中

public boolean onOptionsItemSelected(MenuItem item) {
    return super.onOptionsItemSelected(item);
    if(mToggle.onOptionsItemSelected(item)){
       return true;
    }

您的第一个语句是一个
return
关键字,这使得当前方法跳过下一个代码块。

您是从
onOptionsItemSelected
返回的,并且return语句之后仍然有一些代码。只需切换到下面

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    if(mToggle.onOptionsItemSelected(item)){
       return true;
    }
    return super.onOptionsItemSelected(item);

}
无法访问的是
onOptionsItemSelected
函数中
return
语句之后的
if(mToggle…
。您知道为什么吗?
@Override
public boolean onOptionsItemSelected(MenuItem item) {
    if(mToggle.onOptionsItemSelected(item)){
       return true;
    }
    return super.onOptionsItemSelected(item);

}