如何从CardView开始分享行动的新活动
我想给用户分享cardview内容的选项。 我使用的主要活动这个代码,它工作正常:如何从CardView开始分享行动的新活动
Intent sharingIntent = new Intent(android.content.Intent.ACTION_SEND);
sharingIntent.setType("text/plain");
String shareBody = "some text to share";
sharingIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Subject Here");
sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT, shareBody);
startActivity(Intent.createChooser(sharingIntent, "Share via"));
但是当我从recyclerview使用相同的代码,收到错误和应用程序崩溃。
从一个活动上下文之外调用startActivity()需要
FLAG_ACTIVITY_NEW_TASK标志: 也我通过添加FLAG和仍然没有工作
Intent sharingIntent = new Intent(android.content.Intent.ACTION_SEND);
sharingIntent.setType("text/plain");
String shareBody = " teext to be shared";
sharingIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Subject Here");
sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT, shareBody);
sharingIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(Intent.createChooser(sharingIntent, "Share via"));
IAM收到这个错误修改的代码。这真的是你想要的吗?
holder.iconFavorites_btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// IAM这里调用代码和代码块位于适配器类的内部为recycleview ....位于内侧onBindViewHolder代码mithod } });
任何机构都有解决这个问题的办法吗?如果有任何信息需要告诉我
为了在另一个活动之外启动活动,您必须为意图使用FLAG_ACTIVITY_NEW_TASK标志(与您发布时相同)。
您将通过设置此sharingIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
已经做到了这一点,并没有解决问题 – Adham
然后发布您的堆栈跟踪。这将解决设置新标志的问题。如果这不能解决您遇到的问题,那么您对此没有任何问题,但是有其他问题。 –
发布错误跟踪。 – fluffyBatman
您需要明白,每行代码可能看起来都不错。这些问题通常会在您将这些线路混合在一起以形成逻辑过程时出现。从你给的信息是不可能帮助你。发布代码以显示您如何在RecyclerView中实施共享操作 – Marat
当您没有发布任何与应用程序崩溃相关的错误或任何内容时,您希望人们如何帮助您? – deathangel908