自定义View显示不出来

来源:互联网 发布:迅捷路由器app软件 编辑:程序博客网 时间:2024/04/26 07:45

想封装一个Banner的View,但是ViewPager怎么都显示不出来,

    public class BannerView extends FrameLayout {        private View mRootView;        private ViewPager mBannerViewPager;    public BannerView(Context context) {        this(context , null);    }    public BannerView(Context context, AttributeSet attrs) {        this(context, attrs , 0);    }    public BannerView(Context context, AttributeSet attrs, int defStyleAttr) {        super(context, attrs, defStyleAttr);        init(context);    }        private void init(Context context) {            mContext = context;            mRootView = LayoutInflater.from(context).inflate(R.layout.m_banner_view_layout, this, false);        }  }

查了半天才发现
LayoutInflater.from(context).inflate(R.layout.m_banner_view_layout, this, false);是这个代码出了问题,
第三个参数的解释如下:
* @param attachToRoot Whether the inflated hierarchy should be attached to
* the root parameter? If false, root is only used to create the
* correct subclass of LayoutParams for the root view in the XML.

如果传false表示这个inflate的布局没有关联到根布局,要手动调用addView(mRootView ),才会添加到根布局,

0 0
原创粉丝点击