我正在使用共享对话框在twitter中与以下代码共享文本。
postTweetAfterIntentVar = 1;
Intent tweetIntent = new Intent(Intent.ACTION_SEND);
tweetIntent.setAction(Intent.ACTION_SEND);
tweetIntent.putExtra(Intent.EXTRA_TEXT, "tweet text here");
tweetIntent.setType("text/plain");
startActivity(Intent.createChooser(tweetIntent, "Share this via"));
我想在共享操作完成后启动一个函数。我使用下面的代码,但在完成意图的共享操作后没有任何事情发生。我做错了吗?任何帮助都会很棒。
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (postTweetAfterIntentVar == 1) {
postTweetAfterIntentVar = 0;
postTweetFunc();
}
}
答案 0 :(得分:3)
onActivityResult()
开始活动,则不会调用 startActivity()
。
onActivityResult()
而非startActivityFoResult()
开始任何活动后, startActivity()
会被调用。
因此,当您使用startActivityFoResult()
开始活动时,被调用活动会使用setResult()
设置结果,然后您会在onActivityResult()
中获得该结果。