单Acitivty+Fragment的优化写法。

简介: 一直以来,在写单Acitivty+Fragment的时候,标题栏的布局虽然 include 同一个,但是每次代码里都要对标题栏进行setText() ,而且每次都要写一遍标题栏的点击事件,而在以前的学习使用中,都没有考虑过去对它们进行一个优化。

一直以来,在写单Acitivty+Fragment的时候,标题栏的布局虽然 include 同一个,但是每次代码里都要对标题栏进行setText() ,而且每次都要写一遍标题栏的点击事件,而在以前的学习使用中,都没有考虑过去对它们进行一个优化。


下面用新的思路去解决一下。


用一个父类继承于Fragment,实现OncreateView方法,并添加相应抽象方法,用来返回 layout和title。子类在使用的时候,继承其父类,并返回子类的 layout和title。 这样,每次只需实现父类的抽象方法,即可以实现免 setText等。下面看实现过程。 

public abstract class FragmentSupper extends Fragment {
    @Nullable
    @Override
    public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        View view = View.inflate(getContext(), getLayoutid(), null);
        TextView textView = view.findViewById(R.id.title);
        textView.setText(setTitle());
        getView(view);
        return view;
    }
    //返回view
    public abstract void getView(View view);
    //用来获取子类的layout
    public abstract Integer getLayoutid();
    //获取子类title
    public abstract String setTitle();
}
public class Tianqi extends FragmentSupper  {
    @Override
    public void getView(View view) {
        //这里拿到你的View
    }
    //实现抽象方法,返回layout
    public Integer getLayoutid() {
        return R.layout.tianqi;
    }
    //返回title
    @Override
    public String setTitle() {
        return "Title";
    }
}
目录
相关文章
|
缓存
ViewPager懒加载的实现,理解setUserVisibleHint,而不只是会用就好
Viewpager默认会缓存临近操作的两个页面,也就是至少会缓存一个页面。
163 0
ViewPager懒加载的实现,理解setUserVisibleHint,而不只是会用就好
PagerFragmentAdapter中Fragment的懒加载问题
严格来说来说不是类的懒加载,而是针对业务中的特殊需求实现的,让fragment在可见的时候再进行网络请求。 在viewpager+PagerFragentAdapter里面的Fragment里面,初次加载时,offset范围内的所有fragment的oncreateView方法都会执行,默认情况下,fragment原有的逻辑中,页面的初始化和网络请求都会触发,这就会导致初次进入时,即使在用户面前只展示了一个tab和fragment,但是却所有tab下页面的数据都请求了,会浪费用户流量。正确的做法是在用户打开fragment之后才请求数据。
使用NavHostFragment、navigation--- avtivity向fragment传值,fragment之间传值
使用NavHostFragment、navigation--- avtivity向fragment传值,fragment之间传值
217 0
|
XML 数据库 Android开发
详细聊聊Fragment的实现原理
详细聊聊Fragment的实现原理
|
缓存 Android开发
android Fragment单页面加载,避免重复加载(懒加载)分析
android Fragment单页面加载,避免重复加载(懒加载)分析
|
Java Android开发
ViewStub用法
ViewStub用法
|
Android开发
listview加载性能优化之view的复用
listview加载性能优化之view的复用
|
缓存 vlayout 前端开发
|
容器 缓存
Android--Fragment 实现懒加载和不重复加载
版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/chaoyu168/article/details/79217223 基类: package fragment; import android.
1489 0