我要实现一个动态布局,需要联网获取数据之后确定布局的数量但是在fragment初始化的时候,没有数据的话就创建holder,这样子holder为空了,不知道要如何重新创建holder或者是让holder在获取到数据后再创建。请问要如何实现?public HourlyViewHolder(View itemView, Context context,List<WeatherData> list) { super(itemView); this.weatherDataList = list; hourlyLinearLayout = (LinearLayout) itemView.findViewById(R.id.card_hourly_Linear); //循环绘制hourlyList if (list.size() != 0) { for (int i = 0; i < list.get(0).getHourly_forecast().size(); i++) { View view = View.inflate(context, R.layout.hourly_item, null); hourlyTimeText.add((TextView) view.findViewById(R.id.tv_hourly_time)); hourlyTempText.add((TextView) view.findViewById(R.id.tv_hourly_temp)); hourlyWetText.add((TextView) view.findViewById(R.id.tv_hourly_wet)); hourlyWindText.add((TextView) view.findViewById(R.id.tv_hourly_wind)); hourlyLinearLayout.addView(view); } } }
5 回答

Qyouu
TA贡献1786条经验 获得超11个赞

喵喵时光机
TA贡献1846条经验 获得超7个赞
没看懂你的描述
如果你是RecyclerView的话 和listView是一样的adapter中会先执行getCount()这个方法,如果getCount()返回0的话 后面的方法是不会执行的,所以应该不存在你说的没有数据就创建holder的情况

蛊毒传说
TA贡献1895条经验 获得超3个赞
啊说的不清楚吗。。还有人吗
我的recycleview有4种布局,其中一种布局是不确定数据数量的,所以createViewHolder的时候这种布局getCount为0。所以这个时候的这种布局的viewholder就不存在了
添加回答
举报
0/150
提交
取消