这个应用程序中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);
}
}
当我尝试长按其中一个图片与其他应用分享时,但当我选择其中任何一个时,它会显示"分享失败,再试一次" 我的代码plz解决了什么问题。 请更新我可以共享image_source []中存在的所有图像的代码 谢谢
答案 0 :(得分:0)
您没有通过intent
发送任何内容。
您必须将图像放在临时路径中,以便其他应用程序可以访问它并通过intent发送uri路径。
有关详细信息,请查看https://puu.sh/xdRfZ/a4651025d0.png答案。