2017-05-11 10 views
0

にアクセスすることができますどのようにこれは私のオブジェクトは私がLayoutInflater ImageViewの

public Object instantiateItem(ViewGroup container, int position) { 

     layoutInflater = (LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
     View view = layoutInflater.inflate(R.layout.image_fullscreen_preview, container, false); 

     ImageView imageViewPreview = (ImageView) view.findViewById(R.id.image_preview); 

     Image image = images.get(position); 

     Glide.with(getActivity()).load(image.getLarge()) 
       .thumbnail(0.5f) 
       .crossFade() 
       .diskCacheStrategy(DiskCacheStrategy.ALL) 
       .into(imageViewPreview); 

     container.addView(view); 

     return view; 
    } 

であり、これは私のonShare機能です。

ます。public void onShareItem(){ //私はアプリをデバッグするとき

 ImageView i = (ImageView) getActivity().getLayoutInflater().inflate(R.layout.image_fullscreen_preview,null).findViewById(R.id.image_preview); 

    //imageViewPreview = (ImageView) viewPager.findViewById(R.id.image_preview); 
    // Get access to the URI for the bitmap 
    Uri bmpUri = getLocalBitmapUri(imageViewPreview); 
    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/*"); 
     // Launch sharing dialog for image 
     startActivity(Intent.createChooser(shareIntent, "Share Image")); 
    } else { 
     // ...sharing failed, handle error 
    } 
} 

、ImageViewのがnullのビューからビットマップイメージへのアクセスを取得します..私はR.idで画像を共有したい

を.image_preview どうすればR.id.image_previewイメージにアクセスできますか?

答えて

0

ImageViewを格納するためにクラス変数を使用しないでください。クラス内のどこでも使用できます。

private ImageView mImageView; 

public Object instantiateItem(ViewGroup container, int position) { 

    layoutInflater = (LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
    View view = layoutInflater.inflate(R.layout.image_fullscreen_preview, container, false); 

    mImageView = (ImageView) view.findViewById(R.id.image_preview); 
    ... 
} 

public void onShareItem() { 
    if (mImageView != null) { 
     Uri bmpUri = getLocalBitmapUri(imageViewPreview); 
     ... 
    } 
} 
+0

mImageView =(ImageViewの)getActivity()getLayoutInflater()(R.layout.image_fullscreen_preview、NULL).findViewById(R.id.image_preview)を膨張させます。。。 Uri bmpUri = getLocalBitmapUri(mImageView); böpUriはnullです:( – jancooth

関連する問題