1-是我的第一个活动(主要)2-是我的第二个活动3 - 是我的第三个活动
我想从1开始运行2然后运行2运行3,然后从3运行数据并将其返回到1.希望你们明白的人.
这是我的代码:
Runing 2 form 1 liek:
Intent intent = new Intent(getApplicationContext(),MessageBox.class);
intent.setFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT);
startActivityForResult(intent,5);
Run Code Online (Sandbox Code Playgroud)
然后像这样从2运行3:
Intent intent = new Intent(getApplicationContext(),ImageReceiver.class);
startActivityForResult(intent,5);
Run Code Online (Sandbox Code Playgroud)
然后在3我有这样的事情:
setResult(10);
finish();
Run Code Online (Sandbox Code Playgroud)
所以我在2中设置结果得到这个结果我有:
if(requestCode==5)
{
if(resultCode==10)
{
Intent intent = new Intent(getApplicationContext(),MainActivity.class);
setResult(5,intent);
finish();
}
}
Run Code Online (Sandbox Code Playgroud)
然后在1我得到:
if(requestCode==5)
{
if(resultCode==5)
{
//here i am taking data from 3
}
}
Run Code Online (Sandbox Code Playgroud)
问题是我甚至无法在logcat中打开2 coz我得到:
04-23 22:13:15.579:E/AndroidRuntime(15313):android.util.AndroidRuntimeException:使用FORWARD_RESULT_FLAG同时请求结果
我真的不知道该怎么办.请看这个代码.
我正在尝试制作一个进度条,在我录制声音时会做出反应.我的意思是当记录打开并且有一个声音我的进度条必须移动.我不知道应该如何调用它,但它经常在音频播放器中用来表明音乐正在播放.我希望你知道我的意思.
我用这段代码录制声音:
recorder = new MediaRecorder();
recorder.setAudioSource(MediaRecorder.AudioSource.VOICE_RECOGNITION);
recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
recorder.setOutputFile(outputfile);
Run Code Online (Sandbox Code Playgroud)