2011-07-07 38 views
4

一个简单的问题。我想要一个只有文本的静态对话框消息才能在选项菜单中按下按钮时弹出。这是我的菜单代码:Android - 文本对话框弹出选项菜单

@Override 
    public boolean onOptionsItemSelected(MenuItem item) { 
     switch (item.getItemId()) { 
      case R.id.icon: 
       Intent intent = new Intent(this, Main.class); 
       startActivity(intent); 
      case R.id.help: 
       //popup window code here 
     } 
     return true; 
    } 
} 

我该做这个最简单的方法吗?谢谢!

回答

4
@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    switch (item.getItemId()) { 
     case R.id.icon: 
      Intent intent = new Intent(this, Main.class); 
      startActivity(intent); 
     case R.id.help: 
      //popup window code here 
Toast.makeText(this, "This is the Toast message", Toast.LENGTH_LONG).show(); 

    } 
    return true; 
} 
} 

或u我可以使用对话框

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    switch (item.getItemId()) { 
     case R.id.icon: 
      Intent intent = new Intent(this, Main.class); 
      startActivity(intent); 
     case R.id.help: 
      //popup window code here 
AlertDialog.Builder alertbox = new AlertDialog.Builder(this); 

     // set the message to display 
     alertbox.setMessage("This is the alertbox!"); 

     // add a neutral button to the alert box and assign a click listener 
     alertbox.setNeutralButton("Ok", new DialogInterface.OnClickListener() { 

      // click listener on the alert box 
      public void onClick(DialogInterface arg0, int arg1) { 
       // the button was clicked 

      } 
     }); 

     // show it 
     alertbox.show(); 

    } 
    return true; 
} 

}

+0

你的第二个选项似乎有效,弹出一个对话框,但在此之后它立即返回到Main.class活动。有什么问题? :) – Simonas

+0

我不知道... – kannappan

+0

该死......你没有任何线索吗?代码看起来很简单。 :/ – Simonas

0

您可以创建简单的对话框

static final int DIALOG_MESSAGE_ID= 0; 

protected Dialog onCreateDialog(int id) { 
    switch(id) { 
    case DIALOG_MESSAGE_ID: 
     AlertDialog.Builder builder = new AlertDialog.Builder(this); 
     builder.setMessage("Your message ")//your message 
     }); 
    return builder.create(); 
    break; 
    } 
    return null; 
} 


//in your code 
case R.id.help: 
    showDialog(DIALOG_MESSAGE_ID); 

更在http://developer.android.com/guide/topics/ui/dialogs.html

0
AlertDialog.Builder dialog = new AlertDialog.Builder(context); 
dialog.setMessage("Blah Blah..."); 
dialog.show();