它显示无法访问的语句错误

时间:2017-07-04 17:45:24

标签: android unreachable-statement

我正在尝试对所选项目进行祝酒,但它显示无法访问的语句错误。

我的代码是:

btn=(Button)findViewById(R.id.button);
    btn.setOnClickListener(
            new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                  btn.performLongClick();
                }
            }
    );
    registerForContextMenu(btn);
}
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
    super.onCreateContextMenu(menu, v, menuInfo);
    menu.setHeaderTitle("For Optimum Results");
    menu.add(0,v.getId(),0,"Hi");
    menu.add(0,v.getId(),0,"Hello");
}

@Override
public boolean onContextItemSelected(MenuItem item) {
    return super.onContextItemSelected(item);
    if(item.getTitle()=="Hi"){
        Toast.makeText(this,"hi",Toast.LENGTH_SHORT).show();

    }
return true;
}

1 个答案:

答案 0 :(得分:2)

您有两种类型的错误:

1)返回super(return super.onContextItemSelected(item)),这意味着你在第一行返回你的方法,所以下面的行不能执行。

2)错误比较字符串(item.getTitle()=="Hi"

正确的代码应该是这样的:

@Override
public boolean onContextItemSelected(MenuItem item) {
   //return super.onContextItemSelected(item);//remove this line
   if(item.getTitle().equal("Hi")){// also maybe you want to check not null for item.getTitle()
       Toast.makeText(this,"hi",Toast.LENGTH_SHORT).show();
   }
   return true; 
}