0

ここで、この中viewPagerは、一部の画像が含まれているアプリ、私はそれを共有したいが、 を共有におけるその示すエラー私は私のコードを共有していますここ このMainactivity.javaファイルイメージを共有できないのはなぜですか?

package com.adixpc.hp.physicsfacts; 



import android.support.v4.view.ViewPager; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 


public class Main2Activity extends AppCompatActivity { 
ViewPager viewPager; 
scrAdapter adapter; 


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


    viewPager = (ViewPager)findViewById(R.id.vp); 

    adapter = new scrAdapter(this); 

    viewPager.setAdapter(adapter); 
     } 


    } 

とこれはありますファイルsrcAdapater.java

package com.adixpc.hp.physicsfacts; 


import android.content.Context; 
import android.content.Intent; 
import android.support.v4.view.PagerAdapter; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.ImageView; 
import android.widget.LinearLayout; 

import uk.co.senab.photoview.PhotoViewAttacher; 

import static com.adixpc.hp.physicsfacts.R.id.imageView; 


public class scrAdapter extends PagerAdapter { 



private int image_source [] = {R.drawable.aa, 
     R.drawable.bb, 
     R.drawable.cc, 
     R.drawable.dd, 
     R.drawable.ee, 
     R.drawable.ff, 
     R.drawable.gg, 
     R.drawable.a,R.drawable.b,R.drawable.c,R.drawable.d,R.drawable.e,R.drawable.f,R.drawable.g,R.drawable.h,R.drawable.i,R.drawable.j,R.drawable.k,R.drawable.l,R.drawable.m,R.drawable.n,R.drawable.o,R.drawable.p, 
     R.drawable.q,R.drawable.r,R.drawable.s,R.drawable.t,R.drawable.u, 
     R.drawable.v,R.drawable.w,R.drawable.x,R.drawable.y, 
     R.drawable.z 

}; 

private Context ctx; 
private LayoutInflater layoutInflater; 


public scrAdapter (Context ctx){ 
    this.ctx= ctx; 

} 

@Override 
public int getCount() { 
    return image_source.length; 
} 

@Override 
public boolean isViewFromObject(View view, Object object) { 
    return (view==(LinearLayout)object); 
} 

@Override 
public Object instantiateItem(ViewGroup container, int position) { 
    layoutInflater = (LayoutInflater)ctx.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
    View item = layoutInflater.inflate(R.layout.scrshots,container,false); 
    ImageView img = item.findViewById(imageView); 
    img.setImageResource(image_source[position]); 
    img.setLongClickable(true); 
    img.setOnLongClickListener(new View.OnLongClickListener() { 
     @Override 
     public boolean onLongClick(View view) { 
      Intent intent = new Intent(); 
      intent.setAction(Intent.ACTION_SEND); 
      intent.putExtra(Intent.EXTRA_STREAM,""); 
      intent.setType("image/jpeg"); 
      ctx.startActivity(intent); 
      return true; 
     } 
    }); 

    container.addView(item); 
    return item; 


} 

@Override 
public void destroyItem(ViewGroup container, int position, Object object) { 
    container.removeView((LinearLayout)object); 
} 

}

私は長いしようとすると、他のアプリでそれを共有するために、画像のいずれかをクリックしますが、私はその後、それらのいずれかを選択するとき、それはです"共有に失敗しました、再試行してください"と表示されます 私のコードで何が問題ですか? 私は[] はあなたに感謝image_sourceに存在するすべての画像を共有することができますコードをupadateください

答えて

0

あなたはintentを経由して送信するためには何も入れていません。 イメージを一時的なパスに置く必要があります。他のアプリケーションがそのイメージにアクセスして、意図を介してURIパスを送信することができます。 詳細については、thisの回答を確認してください。

+0

はい私は理解しますが、uはこの質問をチェック@AdityaMishraすべての描画可能な画像 –

+0

を共有する方法を言うことができます:https://stackoverflow.com/q/44008026/2979171をしかし、すべてのアプリは、複数の画像に – lvl4fi4

+0

感謝を共有する機能を持っていないノートあなたの助けを求める兄弟...☺☺ –

関連する問題