感谢阅读。
我遇到的问题是,当我在Activity
中开始新的TabHost
时,新Activity
只会显示几秒钟,然后才会返回默认Activity
} Tab
。
我正在使用TabHost在我的应用中布置5个标签。在其中一个标签中,我按如下方式开始新的Activity
:
Intent intent = new Intent(this, NewActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
LocalActivityManager manager = MyActivityGroup.ActivityGroup.getLocalActivityManager();
MyActivityGroup.ActivityGroup.replaceView(manager.startActivity("NewActivity", intent).getDecorView() );
在此NewActivity
s'onCreate()
中,我正在调用语音识别库'startRecord()
方法,其实现方式如下:
private void startRecognition() {
try {
recognizer.startRecord(new SpeechRecognizerEvent() {
@Override
public void onRecognitionComplete(SpeechResult result) {
//get result data
}
}
我所知道的是SpeechFrameworkActivity
中有一个AndroidManifest.xml
与此库相关联。
如果我注释掉调用startRecord()
方法,则NewActivity
不会消失并继续显示。
我对于出了什么问题一无所知。
从日志中,我看到的只有一行:
09-21 21:16:44.860: DEBUG/PhoneWindow(6737): couldn't save which view has focus because the focused view com.android.internal.policy.impl.PhoneWindow$DecorView@4794d9b8 has no id.
我尝试在onConfigurationChanged()
中使用MainTabActivity
,但这并没有解决问题。
请帮忙!任何帮助/指针都将非常感谢!
答案 0 :(得分:1)
由于内存较少,可能会发生这种情况 在我的情况下,我每次使用前都要清除内存 它的工作原理可能在你的情况下有效 或使用system.gc 或清除缓冲区只是试试这个,如果它有帮助你。