我有一个活动就像一个演示文稿,我想放一些按钮,这样我就可以直接转到特定的片段(我从MainActivity中选择一个)。
我尝试过使用getSupportFragment和Activity.getSupportFragment,但没有任何效果。而且,显然,没有一个简单的意图。
感谢。
这是MainActivity“Splash”:
public class Splash extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.lay_splash);
}
}
FragmentActivity的开始。它不完整,因此包含错误。这是包含片段的活动
public class FragmentActivity extends ActionBarActivity
implements NavigationDrawerFragment.NavigationDrawerCallbacks {
/**
* Fragment managing the behaviors, interactions and presentation of the navigation drawer.
*/
private NavigationDrawerFragment mNavigationDrawerFragment;
/**
* Used to store the last screen title. For use in {@link #restoreActionBar()}.
*/
private CharSequence mTitle;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mNavigationDrawerFragment = (NavigationDrawerFragment)
getSupportFragmentManager().findFragmentById(R.id.navigation_drawer);
mTitle = getTitle();
要在视图之间切换,我使用:
public void onNavigationDrawerItemSelected(int position) {
// update the main content by replacing fragments
FragmentManager fragmentManager = getSupportFragmentManager();
Fragment views=null;
switch (position) {
case 0:
//news
views= new news();
break;
case 1:
//time
views=new time();
break;
case 2:
//Ins
views=new Ins() ;
break;
}
fragmentManager.beginTransaction()
.replace(R.id.container, views)
.commit();
}
答案 0 :(得分:0)
好的,我可以尝试为您提供解决方案:您可以在this指南后面的SplashActivity中添加所有片段,而不是创建新视图。
将所有片段设置为View.GONE
。
用户点击按钮后,将相关片段的View属性更改为Visible
,将所有其他片段的View属性更改为Gone
。
每次用户点击按钮时都会执行此操作,除了您需要的片段外,所有片段都会消失。
这应该可以,但我建议您查看有关如何使用NavigationDrawer的official documentation或this指南。
希望我帮助,祝你好运!