从android中的另一个活动调用Toast.makeText

时间:2013-09-08 10:18:50

标签: android menu option exit

我正在尝试创建一个选项菜单,它向我显示菜单,但是当我点击任何东西时,它现在向我显示Toast.makeText Text我的代码在下面。但是当我把代码放在同一个活动中时,它会向我显示文本。

    package com.officextracts.kaspersky;

    import android.os.Bundle;
    import android.app.Activity;
    import android.view.Menu;
    import android.view.MenuItem;
    import android.widget.Toast;

    public class Option_menu extends Activity {

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

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

            switch (item.getItemId())
            {
            case R.id.menu_home:
                // Single menu item is selected do something
                // Ex: launching new activity/screen or show alert message
                Toast.makeText(this, "Home Is selected", Toast.LENGTH_SHORT).show();
                return true;

            case R.id.menu_krp:
                Toast.makeText(this, "Kaspersky Retail Products", Toast.LENGTH_SHORT).show();
                return true;

            case R.id.menu_kep:
                Toast.makeText(this, "Kaspersky Endpoint Products", Toast.LENGTH_SHORT).show();
                return true;

            case R.id.menu_fkr:
                Toast.makeText(this, "Find Kaspersky Resaller", Toast.LENGTH_SHORT).show();
                return true;

            case R.id.menu_sales:
                Toast.makeText(this, "Contact Kaspersky Sales", Toast.LENGTH_SHORT).show();
                return true;

            case R.id.menu_crs:
                Toast.makeText(this, "Contact Retail Support", Toast.LENGTH_SHORT).show();
                return true;

            case R.id.menu_ces:
                Toast.makeText(this, "Contact Enterprise Support", Toast.LENGTH_SHORT).show();
                return true; 

            case R.id.menu_coo:
                Toast.makeText(this, "Contact Our Office", Toast.LENGTH_SHORT).show();
                return true;


            case R.id.menu_sms:
                Toast.makeText(this, "SMS for Support", Toast.LENGTH_SHORT).show();
                return true;


            case R.id.menu_email:
                Toast.makeText(this, "Email Support", Toast.LENGTH_SHORT).show();
                return true;            

            case R.id.menu_exit:
                finish();
                System.exit(0);                

            default:
                return super.onOptionsItemSelected(item);
            }
        }    
    }

现在怎么办呢,你可以看到菜单底部有一个退出按钮,当我从其他活动中调用它时,它可以正常工作,但是从同样的活动开始工作。

我是Android新手,请详细说明..

感谢你

1 个答案:

答案 0 :(得分:0)

在您的第一个Activity中,我们称之为A,您启动名为Activity的{​​{1}}。

使用Options_menu代替startActivityForResult(Intent, int)启动它 startActivity(Intent)是requestCode。这应该是int,我们称之为yourRequestCodeInt 然后在final static int中,覆盖A 在那里,if(requestCode == yourRequestCodeInt) 从Intent中获取您的数据,这是您必须在Toast中显示的消息。

在Options_menu中,在完成onActivityResult()和seResult(Result.OK)或类似的事情之前,将想要显示的字符串放在意图中