选项菜单两次选项单击一个项目?

时间:2014-03-22 22:26:28

标签: java android

我需要一个帮助,如何制作一个具有不同功能的项目选项菜单? 例如:当我单击第一个R.id.search然后显示edittext然后当我再次单击R.id.search然后编辑文本隐藏。

public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main_2, menu);
    return true;
}    

public boolean onOptionsItemSelected(MenuItem item) {
  switch (item.getItemId()) {

  case R.id.search:
      if (item.getItemId() == R.id.search){ 
      editsearch.setVisibility(View.VISIBLE);
      }else{
          editsearch.setVisibility(View.GONE); 
      }
    break;

2 个答案:

答案 0 :(得分:1)

测试editSearch视图的当前可见性

case R.id.search:
    if (editsearch.getVisibility() == View.GONE) 
        editsearch.setVisibility(View.VISIBLE);
    else
        editsearch.setVisibility(View.GONE); 

答案 1 :(得分:0)

添加全局变量:

boolean isFirst=true;

并且第一次单击会将其设置为false,如下所示:

case R.id.search:
if (isFirst){ 
      isFirst=false;
      editsearch.setVisibility(View.VISIBLE);
      }else{
          editsearch.setVisibility(View.GONE); 
      }
    break;