解决方案: 1. item使用RelativeLayout布局,并且布局中的view至少有一个layout_alignParentRight=true 2. 在adapte中的onCreateViewHolder,使用如下代码来获得View :
代码语言:javascript复制public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
//下面这种办法会引起Match_Parent失效
View view = View.inflate(parent.getContext(), R.layout.item_fra_main2, null);
//使用下面这行代码则不会失效
View view = mInflater.from(mContext).inflate(R.layout.item_fra_main2, parent, false);
ViewHolder holder = new ViewHolder(view);
return holder;
}
那么就有很多小伙伴就会问了, 我怎么得到这个mInflater呢? 看如下代码:
代码语言:javascript复制LayoutInflater mInflater = (LayoutInflater)mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
原理我就不再过多赘述了,有意向的小伙伴请自行谷歌.