java - The application crashes after using the add method of the FragmentTransaction object in Android
仅有的幸福
仅有的幸福 2017-06-12 09:19:13
0
1
860

I want to set and replace fragments in the activity. In the setDefaultFragment() method, use thetransaction.add(R.id.layFrame, MapsFragment.newInstance("map","map"));
statement to cause a crash. Comment out this statement and it will run normally.

Application screenshot

xml

    

Activity

public class MainActivity extends AppCompatActivity implements BottomNavigationBar.OnTabSelectedListener{ private ArrayList fragments; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //底部导航栏对象 BottomNavigationBar bottomNavigationBar = (BottomNavigationBar) findViewById(R.id.bottom_navigation_bar); //设置样式、颜色 bottomNavigationBar.setBackgroundStyle(BottomNavigationBar.BACKGROUND_STYLE_STATIC); bottomNavigationBar .setActiveColor(R.color.colorPrimary) .setInActiveColor("#FFFFFF") .setBarBackgroundColor("#ECECEC"); //添加导航项 bottomNavigationBar .addItem(new BottomNavigationItem(R.drawable.ic_location_on_white_24dp, "Location")) .addItem(new BottomNavigationItem(R.drawable.ic_tracks_on_white_24dp, "Tracks")) .setFirstSelectedPosition(0) .initialise(); //获取fragment列表,设定默认fragment fragments = getFragments(); setDefaultFragment(); //监听 bottomNavigationBar.setTabSelectedListener(this); } private ArrayList getFragments() { ArrayList fragments = new ArrayList<>(); fragments.add(MapsFragment.newInstance("Map","Map")); fragments.add(TracksFragment.newInstance(3)); return fragments; } private void setDefaultFragment(){ FragmentTransaction transaction = getSupportFragmentManager().beginTransaction(); transaction.add(R.id.layFrame, MapsFragment.newInstance("map","map")); transaction.addToBackStack(null); transaction.commit(); } @Override void init() { } @Override public void onTabSelected(int position) { } @Override public void onTabUnselected(int position) { } @Override public void onTabReselected(int position) { } }
仅有的幸福
仅有的幸福

reply all (1)
给我你的怀抱

Solved, it turns out that there is OnFragmentInteraction interface in fragment, but it is not implemented in activity

    Latest Downloads
    More>
    Web Effects
    Website Source Code
    Website Materials
    Front End Template
    About us Disclaimer Sitemap
    php.cn:Public welfare online PHP training,Help PHP learners grow quickly!