我使用以下方法在用户设备上生成文件,然后通过电子邮件发送给我。
new ActivityDumpUtil(FragmentRequestIcons.this, outfile, new ActivityDumpUtil.ActivityDumpCallback() {
@Override
public void onComplete (File outfile) {
Intent intent = new Intent(android.content.Intent.ACTION_SEND);
intent.setType("text/plain");
Uri uri = Uri.fromFile(outfile);
intent.putExtra(android.content.Intent.EXTRA_STREAM, uri);
intent.putExtra(android.content.Intent.EXTRA_EMAIL, new String[] { "************" });
intent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Icon Support");
intent.putExtra(android.content.Intent.EXTRA_TEXT, "I am using " + Build.DEVICE + " with Android version " + Build.VERSION.RELEASE + " on " + getResources().getString(R.string.app_name));
startActivity(Intent.createChooser(intent, "Send eMail.."));
finish();
}
})
我最近在一个Activity中有这个,但我现在想要它在一个片段中因为我使用了Androids导航抽屉。
当然,finish()不会在片段中起作用。我如何从我的片段中完成这项工作?
答案 0 :(得分:0)
制作课程serializable并将其置于意图之中。
使您的课程可序列化:
class yourClass implements Serializable{}
用你的意图说出来:
intent.putExtra("The Class", this);
要使类失去意图(在片段中使用它):
yourClass yc = (yourClass) getIntent().getExtras().getSerializable("The Class");
yc.finish()//use this whenever you want