請看問題:
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAzNfRHLGZkRGZkRfJ3bs92YsYTMfVmepNHLxsmaNNTR61kMNpHW4Z0MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnL2QTO5ETO1MjM0ITNwkTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
很坑爹啊!代碼中寫的item樣式就是想象的不太一樣
<TextView
android:id="@+id/xuhao"
android:layout_weight="1"
android:gravity="center"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="序号"
style="@style/MyItemSize"
android:background="@drawable/myshape"/>
一個item就是由14個這樣的textview組成的,沒有任何花裡胡哨,但是我明明每一個item都給定了android:layout_weight=“1”,,但實際上卻并不是理想狀态,首先每個textview的寬度并不一樣,而且TextView中沒有值,他幹脆就不顯示了,後來在百度了很多資料發現可以把android:layout_width="match_parent"改成android:layout_width=“0dp”,試了一下果然可以變成了這個樣子:
空值可以顯示了,而且每一個TextView的寬度确實也變成了理想樣子,但問題又來了,為什麼隻有第一個item充滿了整個螢幕,而剩下的沒有?
查閱了很多的資料和文章,也沒有找到結果,後來突然靈光一閃
public WuLiaoWanShanRecycleAdapter.DaiChuZhiHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
View view = LayoutInflater.from(context).inflate(R.layout.item_wuliaosuoxu , null , false);
WindowManager wm = (WindowManager) context
.getSystemService(Context.WINDOW_SERVICE);
int width = wm.getDefaultDisplay().getWidth();
int height = wm.getDefaultDisplay().getHeight();
view.setMinimumWidth(width);
WuLiaoWanShanRecycleAdapter.DaiChuZhiHolder daiChuZhiHolder = new WuLiaoWanShanRecycleAdapter.DaiChuZhiHolder(view);
return daiChuZhiHolder;
}
在recyclerView的擴充卡中oncreatitem的時候給item的寬度重新指派,讓item的寬度與螢幕相等,後來終于改好了這個,變成了這個樣子
可能也是自己比較菜鳥的原因,是以這麼簡單的問題到糾結了好久,大神勿噴!