美文网首页小技巧
重写BaseActivity中setContentView方法,

重写BaseActivity中setContentView方法,

作者: 卖梦为生_若愚 | 来源:发表于2017-06-22 14:14 被阅读94次

    项目中遇到类似网页云音乐那样的需要在每个页面下面都显示一个底部播放器,开始考虑用fragment来写,仔细观察网易云音乐之后发现好像不是fragment写的,于是重写setContentView方法,先给BaseActivity一个布局,里面一个linearlayout包含两部分:上半部分一个空的linearlayout用于装载activity的布局,下半部分是底部播放器布局。

    public abstract class BaseActivity extends AppCompatActivity {

    @Override

    protected voidonCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    if(savedInstanceState !=null) {

    setContentView(getLayoutId());

    }

    @Override

    public voidsetContentView(intlayoutResID) {

    getDelegate().setContentView(R.layout.base_avtivity_layout);

    LinearLayout base_activity_view = (LinearLayout) findViewById(R.id.base_activity_view);

    View activity_view = LayoutInflater.from(this).inflate(layoutResID, null);

    base_activity_view.addView(activity_view);

    }

    相关文章

      网友评论

      本文标题:重写BaseActivity中setContentView方法,

      本文链接:https://www.haomeiwen.com/subject/pakfcxtx.html