抽取父类

public abstract class BaseActivity extends AppCompatActivity {
private LinearLayout mLayout;

@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_base);
    mLayout = (LinearLayout)findViewById(R.id.layout);
    View view = View.inflate(this,getLayoutId(),null);
    mLayout.addView(view);
    initData();
}

protected abstract void initData();

public abstract int getLayoutId() ;

}

//抽取Fragment

public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view=View.inflate(getActivity(),R.layout.fragment_base,null);
mLayout=(LinearLayout)view.findViewById(R.id.layout_bace);//用于添加子类布局
View v=View.inflate(getActivity(),getLayoutId(),null);
mLayout.addView(v);
return view;
}

@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);

    initData();
}

protected abstract void initData();

public abstract int getLayoutId();

}

网页代码

    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:id="@+id/layout"
    ></LinearLayout>

猜你喜欢

转载自blog.csdn.net/ZJYLHF/article/details/82831149