提取页面共性用抽象类来写页面模板

页面太多 有一些共性可以提取出来写成模板页  比如说 topbar 文字  控件 布局 ,定义抽象方法 ,映射传参 都是一种比较好的封装,好处是这些共性 属性一样,只需动态的更改值就可以了.现在简单写写 ,体会下这种思想,往后再做个完整的 大家新年快乐

public abstract class BasePager {

    public Activity mActivity;

    public View mRootView;

    public TextView tvTitle;
    public ImageButton btnMenu;
    public FrameLayout flContent;

    public BasePager(Activity activity) {
        mActivity = activity;
        initView();
    }

    /**
     * 初始化布局
     */
    public void initView() {
        mRootView = View.inflate(mActivity, R.layout.base_pager, null);
        tvTitle = (TextView) mRootView.findViewById(R.id.tv_title);
        btnMenu = (ImageButton) mRootView.findViewById(R.id.btn_menu);
        flContent = (FrameLayout) mRootView.findViewById(R.id.fl_content);
    }

    /**
     * 初始化数据
     */
    public abstract void initData();
}

 布局:menu title 都是topbar上的控件 这里实例化出来是要在再initdata里设置的 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <include layout="@layout/top_bar" />

    <FrameLayout
        android:id="@+id/fl_content"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
    </FrameLayout>

</LinearLayout>

 

你可能感兴趣的:(提取页面共性用抽象类来写页面模板)