2016-01-17 30 views
0

我正在使用appcompat-v7:22.2.0'AppCompatActivity。当试图创建一个共享的意图,我得到以下警告:当它的挖掘,什么都没有,甚至连一个错误getActionProvider:item不实现SupportMenuItem;返回null

W/MenuItemCompat: getActionProvider: item does not implement SupportMenuItem; returning null 

此外,同时共享图标出现在菜单中没有任何反应。也许这是唯一的问题,即连接水龙头?

它看起来像我缺少的程序兼容性支持库的一些怪癖,但我无法找到相关的文档

的代码在我的活动

@Override                      
public boolean onCreateOptionsMenu(Menu menu) {            
    ...                     
    mShareActionProvider = (ShareActionProvider) MenuItemCompat.getActionProvider(shareItem); 
    setShareIntent();                   
    ...             
}                        

private ShareActionProvider mShareActionProvider; 

private void setShareIntent() {                   
    SubsamplingScaleImageView tempImage = (SubsamplingScaleImageView) findViewById(R.id.thumbnailView); 
    if (mShareActionProvider != null && tempImage != null) {           

     Log.e(TAG, "this happened");                 
     // Get access to the URI for the bitmap               
     Uri bmpUri = getLocalBitmapUri(tempImage);              
     if (bmpUri != null) {                   
      // Construct a ShareIntent with link to image            
      Intent shareIntent = new Intent();               
      shareIntent.setAction(Intent.ACTION_SEND);             
      shareIntent.putExtra(Intent.EXTRA_STREAM, bmpUri);           
      shareIntent.setType("image*//*");               
      mShareActionProvider.setShareIntent(shareIntent);           
     } else {                      
      // ...sharing failed, handle error               
     }                        
    }else{                        
     Log.e(TAG, "this should not have happened");             
    }                         
} 

我试图铸造但这再没差异

mShareActionProvider = (ShareActionProvider) MenuItemCompat.getActionProvider((SupportMenuItem) shareItem); 

采用进口

import android.app.Fragment; 
import android.content.Intent; 
import android.graphics.Bitmap; 
import android.graphics.drawable.BitmapDrawable; 
import android.graphics.drawable.Drawable; 
import android.net.Uri; 
import android.provider.MediaStore; 
import android.support.annotation.NonNull; 
import android.support.v4.view.MenuItemCompat; 
import android.util.Log; 
import android.view.Menu; 
import android.view.MenuItem; 
import android.support.v7.widget.ShareActionProvider; 
import android.widget.ImageView; 

编辑:我试过这与ActionBarActivity万一是这个问题,但没有变化。

回答

0

所以事实证明,这个错误导致我沿着花园的路径。问题原来是因为我使用了错误的菜单布局来处理我正在工作的片段。非常混乱。

如果mods宁愿我删除这个问题只是让我知道