我创建了一个扩展MapFragment
的片段 Fragment01 。问题是,因为它不再延长Fragment
,现在 MainActivity 的onSelectFragment
部分不再起作用了。我需要在 MainActivity 中更改以使其像以前一样工作?我收到的错误位于newFragment = new Fragment01();
行,其中 类型不匹配:无法从Fragment01转换为Fragment 。作为一个菜鸟,我只是尝试newMapFragment = new Fragment01();
,但是没有做到。
MainActivity
public class MainActivity extends FragmentActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
FragmentManager fm = getSupportFragmentManager();
FragmentTransaction transaction = fm.beginTransaction();
StartFragment startfragment = new StartFragment();
transaction.add(R.id.fragment_placeholder, startfragment);
transaction.commit();
}
public void onSelectFragment(View view){
Fragment newFragment;
if (view == findViewById(R.id.btnstartfragment)) {
newFragment = new StartFragment();
} else if (view == findViewById(R.id.btnfragment01)) {
newFragment = new Fragment01();
} else if (view == findViewById(R.id.btnfragment02)) {
newFragment = new Fragment02();
} else {
newFragment = new StartFragment();
}
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
transaction.replace(R.id.fragment_placeholder, newFragment);
transaction.addToBackStack(null);
transaction.commit();
}
}
答案 0 :(得分:0)
使用不同的Fragment
层次结构可能会出错:来自支持库和平台。
检查MapFragment
。
这两种不同的类型:
android.support.v4.app.Fragment
android.app.Fragment