Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/201.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Can';Android无法轻松实现共享操作_Android_Android Layout_Android Intent - Fatal编程技术网

Can';Android无法轻松实现共享操作

Can';Android无法轻松实现共享操作,android,android-layout,android-intent,Android,Android Layout,Android Intent,因此,我试图添加一个简单的共享操作,但单击共享操作不会显示应该出现的弹出窗口 有点像这样 我使用的是appcompatv7和工具栏,而不是操作栏 这是我的密码 菜单-XML <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <item android:id="@+id/menu_it

因此,我试图添加一个简单的共享操作,但单击共享操作不会显示应该出现的弹出窗口

有点像这样

我使用的是appcompatv7和工具栏,而不是操作栏

这是我的密码

菜单-XML

<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">

<item
    android:id="@+id/menu_item_share"
    android:orderInCategory="100"
    app:showAsAction="always"
    android:icon="@drawable/ic_social_share"
    android:title="Share"
    android:actionProviderClass="android.widget.ShareActionProvider" />

<item
    android:title="Add"
    android:id="@+id/action_add_new_alarm"
    android:orderInCategory="101"
    android:icon="@android:drawable/ic_menu_add"
    app:showAsAction="always"/>

即使是Logcat也没有显示我在CreateOptions菜单上按下了一个按钮

OnOptions ItemSelected
,可以使用
操作栏
,但是正如您所说的,您使用的是
工具栏
,并且您的
onMenuItemClick
的实现不包括启动共享意图的选项,先生,你是救命恩人。我觉得自己很愚蠢。。。谢谢你,兄弟
  //all about the toolbar
    Toolbar toolbar = (Toolbar) findViewById(R.id.view);
    // Set an OnMenuItemClickListener to handle menu item clicks
    toolbar.setOnMenuItemClickListener(
            new Toolbar.OnMenuItemClickListener() {
                @Override
                public boolean onMenuItemClick(MenuItem item) {
                    // Handle the menu item
                    switch (item.getItemId()) {
                        case R.id.action_add_new_alarm: {
                            startAlarmDetailsActivity(-1);
                            break;
                        }
                    }
                    return true;
                }
            });

    // Inflate a menu to be displayed in the toolbar
    toolbar.inflateMenu(R.menu.alarm_list);
    toolbar.setTitle("MY APP");

  @Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate menu resource file.
    getMenuInflater().inflate(R.menu.alarm_list, menu);
    return super.onCreateOptionsMenu(menu);
}


@Override
public boolean onOptionsItemSelected(MenuItem item) {

    switch (item.getItemId()) {
        case R.id.action_add_new_alarm: {
            startAlarmDetailsActivity(-1);
            Log.i(TAG, "add button clicked");
            return true;
        }
        case R.id.menu_item_share: {
            Log.i(TAG, "share button clicked");
            actionShare();
            return true;
        }
        default:
            return super.onOptionsItemSelected(item);
    }
}


private void actionShare(){
    Intent i = new Intent(Intent.ACTION_SEND);
    i.setType("text/plain");
    i.putExtra(Intent.EXTRA_SUBJECT, "my string");
    i.putExtra(Intent.EXTRA_TEXT, "another string");
    startActivity(i);
    //Or like above will always display the chooser
    //startActivity(Intent.createChooser(i, getResources().getText(R.string.share)));
}