24H免费课程咨询  TEL:13401595960   QQ:1870218756  微信:13401595960(李老师)

东方博宜

网站首页 > 软件开发资讯 > 安卓开发

【常州Android开发培训班】Android开发之漫漫长途

2018-05-08 18:56:12 东方博宜 阅读

先创建宿主Activity


新建BestFragmentActivity


    public class BestFragmentActivity extends AppCompatActivity {


        @Override

        protected void onCreate(Bundle savedInstanceState) {

            super.onCreate(savedInstanceState);

            setContentView(R.layout.activity_best_fragment);


        //下面是LuseenBottomNavigation的使用

        BottomNavigationView bottomNavigationView = (BottomNavigationView) findViewById(R.id.bottomNavigation);


        BottomNavigationItem bottomNavigationItem = new BottomNavigationItem

                ("首页", ContextCompat.getColor(this, R.color.firstColor), R.mipmap.ic_account_balance_white_48dp);

        BottomNavigationItem bottomNavigationItem1 = new BottomNavigationItem

                ("分类", ContextCompat.getColor(this, R.color.secondColor), R.mipmap.ic_list_white_48dp);


        BottomNavigationItem bottomNavigationItem2 = new BottomNavigationItem

                ("任务", ContextCompat.getColor(this, R.color.firstColor), R.mipmap.ic_add_circle_outline_white_48dp);

        BottomNavigationItem bottomNavigationItem3 = new BottomNavigationItem

                ("购物车", ContextCompat.getColor(this, R.color.thirdColor), R.mipmap.ic_add_shopping_cart_white_48dp);


        BottomNavigationItem bottomNavigationItem4 = new BottomNavigationItem

                ("我的", ContextCompat.getColor(this, R.color.colorAccent), R.mipmap.ic_account_box_white_48dp);


        bottomNavigationView.addTab(bottomNavigationItem);

        bottomNavigationView.addTab(bottomNavigationItem1);

        bottomNavigationView.addTab(bottomNavigationItem2);

        bottomNavigationView.addTab(bottomNavigationItem3);

        bottomNavigationView.addTab(bottomNavigationItem4);

        }


    }

对应的布局文件activity_best_fragment


    <?xml version="1.0" encoding="utf-8"?>

    <RelativeLayout

        xmlns:android="http://schemas.android.com/apk/res/android"

        xmlns:app="http://schemas.android.com/apk/res-auto"

        android:layout_width="match_parent"

        android:layout_height="match_parent"

        android:id="@+id/main_content"

        android:fitsSystemWindows="true"

        >


        <!--Fragment之后就动态的放在该布局文件下-->

        <FrameLayout

            android:id="@+id/frame_content"

            android:layout_width="match_parent"

            android:layout_height="match_parent"

            android:scrollbars="none"

            android:layout_above="@+id/bottomNavigation"

            />


        <!--关于底层布局我这里使用了Github上的开源项目-->

        <com.luseen.luseenbottomnavigation.BottomNavigation.BottomNavigationView

            android:id="@+id/bottomNavigation"

            android:layout_width="match_parent"

            android:layout_height="wrap_content"


            android:layout_alignParentBottom="true"

            app:bnv_colored_background="false"

            app:bnv_with_text="true"

            app:bnv_shadow="false"

            app:bnv_tablet="false"

            app:bnv_viewpager_slide="true"

            app:bnv_active_color="@color/colorPrimary"

            app:bnv_active_text_size="@dimen/bottom_navigation_text_size_active"

            app:bnv_inactive_text_size="@dimen/bottom_navigation_text_size_inactive"/>


    </RelativeLayout>

关于底层布局我这里使用了Github上的开源项目LuseenBottomNavigation,该项目地址是https://github.com/armcha/LuseenBottomNavigation读者可自行查看


接着创建Fragment


目前Fragment作为演示使用,可以看到布局内容都非常简单,我这里只给出其中一个Fragment的创建过程和源码,项目完整源码可见文末的源码地址。


我们就拿第一个GoodsFragment举例把


    public class GoodsFragment extends Fragment {

        private static String TAG= GoodsFragment.class.getSimpleName();

        @Override

        public void onAttach(Context context) {

            super.onAttach(context);

            Log.d(TAG,"onAttach");

        }


        @Nullable

        @Override

        public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

            Log.d(TAG,"onCreateView");

            View view = inflater.inflate(R.layout.fragment_goods, null);

            return view;

        }


        @Override

        public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {

            super.onViewCreated(view, savedInstanceState);

            Log.d(TAG,"onViewCreated");

        }


        @Override

        public void onActivityCreated(@Nullable Bundle savedInstanceState) {

            super.onActivityCreated(savedInstanceState);

            Log.d(TAG,"onActivityCreated");

        }


        @Override

        public void onCreate(@Nullable Bundle savedInstanceState) {

            super.onCreate(savedInstanceState);

            Log.d(TAG,"onCreate");

        }


        @Override

        public void onStart() {

            super.onStart();

            Log.d(TAG,"onStart");

        }


        @Override

        public void onResume() {

            super.onResume();

            Log.d(TAG,"onResume");

        }


        @Override

        public void onPause() {

            super.onPause();

            Log.d(TAG,"onPause");

        }


        @Override

        public void onStop() {

            super.onStop();

            Log.d(TAG,"onStop");

        }


        @Override

        public void onDestroyView() {

            super.onDestroyView();

            Log.d(TAG,"onDestroyView");

        }


        @Override

        public void onDestroy() {

            super.onDestroy();

            Log.d(TAG,"onDestroy");

        }


        @Override

        public void onDetach() {

            super.onDetach();

            Log.d(TAG,"onDetach");

        }


    }

源码非常的简单,在onCreateView中加载布局文件,该布局文件也非常简单,仅仅定义了一个帧布局,在帧布局中包含了一个TextView

常州东方博宜是一家专注IT,互联网,电脑方面的顶尖培训机构,欢迎社会及院校有志互联网营销,搜索引擎营销的人士,来东方博宜报名学习,互相交流。

常州东方博宜地址:常州天宁区延陵西路2号工人文化宫5号楼

 2.新北区太湖东路9-4号常州创意园E12


Powered by 东方博宜教育咨询江苏有限公司  ©2008-2018 www.czos.cn