从另一个活动中打开活动的片段

时间:2013-05-30 12:37:57

标签: android android-intent android-fragments start-activity

大家好我想打开"文字转语音输出"我的应用程序中的设置片段。我想首先我需要打开设置活动,然后打开它的片段。我尝试设置ComponentName,但无法找到活动。

我应该使用FragmentManager;我无法找到符合我需求的任何东西。有人可以给我一些可能解释得很好的链接。

2 个答案:

答案 0 :(得分:13)

你是对的,首先你需要启动Activity而不是在FragmentPager / Manager中设置当前的Fragment ...他们没有这样的方法从你的Activity中启动一些外来片段会很危险看到会导致僵尸碎片漂浮在应用程序周围(或者可能是我不知道...)

  1. 您使用Fragment名称的某个参数调用Activity Intent,您想要启动,即interger,boolean等...

      Intent intent = new Intent(this,SecondActivity.class);
      intent.putIntExtra("fragmentNumber",1); //for example    
      startActivity(intent);
    
  2. 检查Second Acitivty的OnCreate中传递的值,并在OnCreate内部设置所需的片段..

     if(getIntent().getIntExtra("fragmentNumber",0)==1){
       //set the desired fragment as current fragment to fragment pager
      }
    
  3. 但是我没有遇到问题"It was unable to locate the activity."您是否在最明显的文件中输入了活动而不是您遇到的问题..请发布完整的堆栈跟踪..

答案 1 :(得分:2)

您可以使用以下内容:

Intent ttsSettings = new Intent("com.android.settings.TTS_SETTINGS");
ttsSettings.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(ttsSettings);