我有一个错误:
错误:无法访问语句错误:错误:缺少返回语句
正在运行此代码:
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;
}
}
}
答案 0 :(得分:2)
在第一行之后的onOptionsItemSelected()中if()是无法访问的代码请在下面使用。
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if(mToggle.onOptionsItemSelected(item)){
return true;
}else{
return false;
}
}
答案 1 :(得分:0)
super.onOptionsItemSelected(item)
后,请致电mToggle.onOptionsItemSelected(item)
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if(mToggle.onOptionsItemSelected(item)){
return true;
}
return super.onOptionsItemSelected(item);
}
答案 2 :(得分:0)
在您的代码中
public boolean onOptionsItemSelected(MenuItem item) {
return super.onOptionsItemSelected(item);
if(mToggle.onOptionsItemSelected(item)){
return true;
}
您的第一个语句是return
关键字,这使得当前方法跳过下一个代码块。
答案 3 :(得分:0)
您将从onOptionsItemSelected
返回,并且在return语句后仍有一些代码。只需更改为
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if(mToggle.onOptionsItemSelected(item)){
return true;
}
return super.onOptionsItemSelected(item);
}