Fragment
public abstract class BaseFragment extends Fragment {
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
int iid = LayoutId();
if (iid!=0){
View view = inflater.inflate(LayoutId(), container, false);
initView(view);
initData();
return view;
}
return null;
}
protected abstract void initData();
protected abstract void initView(View view);
protected abstract int LayoutId();
}
Activity
public abstract class BaseActivity extends FragmentActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(LayoutId());
initView();
initData();
}
protected abstract void initData();
protected abstract void initView();
protected abstract int LayoutId();
}