我想要的是,当我有意识地从一项活动跳到另一项活动时,它还应该在framelayout内自动设置一个片段,但是我不知道如何做到这一点,将不胜感激。
答案 0 :(得分:1)
如果我正确地回答了您的问题,那么这段代码将为您提供帮助:
在您的第一次活动中,输入以下代码:
public static final String FRAGMENTA = "FragmentA";
public static final String FRAGMENTB = "FragmentB";
public static final String FRAGMENTC = "FragmentB";
String fragmentToDisplay = FRAGMENTA;
Intent intent = new Intent(getApplicationContext(), SecondActivity.class);
intent.putExtra("fragmentToDisplay", fragmentToDisplay);
startActivity(intent);
然后在onCreate
的第二个活动中,接收意图并根据字符串意图设置一个片段:
String fragmentToDisplay = getIntent.getStringExtra("fragmentToDisplay");
switch (fragmentToDisplay) {
case FirstActivity.FRAGMENTA:
//FragmentTransaction to show Fragment A
break;
case FirstActivity.FRAGMENTB:
//FragmentTransaction to show Fragment B
break;
case FirstActivity.FRAGMENTC:
//FragmentTransaction to show Fragment C
break;
}
答案 1 :(得分:0)
在您的firstActivity
中,调用第二个意图来进行下一个活动,如下所示:
Intent intent= new Intent(firstActivity.this, secondActivity.class);
startActivity(intent);
在您的secondActivity中,您可以默认放置一个片段,如下所示:
// Put this code in your onCreate() method of secondActivity.
if(savedInstanceState == null) {
Fragment fragment = new Fragment();
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
transaction.add(R.id.frame, fragment);
transaction.commit();
}
上面的代码在启动secondActivity
时自动执行,并将fragment
放在frame
中。
希望这会有所帮助:)