從今天開始
元件篇已經結束了
接下來就會是一些比較大的主題
第一彈就是大名鼎鼎的RecyclerView
不過有個問題
就是我的文章庫存已經用完了
每天半夜12點都是截稿日
很刺激呢
加上我最近剛換公司
可能也沒什麼機會上班偷寫文章
所以可能什麼時候都結束也不意外...
雖然不知道有多少人在看
或是對大家有沒有幫助
我會盡量寫,寫到真的來不及為止
如果來不及的話我就只能先貼畫面再來補了(打文章真的會很花時間)
-----------------------------------------閒聊為止分隔線-----------------------------------
就是做一個會自己長高的tableView
Adapter
ViewHolder
不能是match_parent
,不然就會一頁一個cell了...(☘️☘️☘️heightForRowAtIndexPath) class CustViewHolder extends RecyclerView.ViewHolder
{
private TextView textViewName;
private TextView textViewTitle;
private TextView textViewBio;
public CustViewHolder(@NonNull View itemView)
{
super(itemView);
textViewName = itemView.findViewById(R.id.textViewName);
textViewTitle = itemView.findViewById(R.id.textViewTitle);
textViewBio = itemView.findViewById(R.id.textViewBio);
}
void updateUI(Staff staff)
{
textViewName.setText(staff.name);
textViewTitle.setText(staff.title);
textViewBio.setText(staff.bio);
}
}
有了ViewHolder,才有辦法實作:
onCreateViewHolder
(給它畫面) View cell = LayoutInflater.from(parent.getContext()).inflate(R.layout.cell_lesson11,parent,false);
return new CustViewHolder(cell);
onBindViewHolder
(給它資料或監聽點擊) CustViewHolder custViewHolder = (CustViewHolder)holder;
custViewHolder.updateUI((Staff) this.items.get(position));
custViewHolder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Log.d("MF",position + "被點");
}
});
3.getItemCount
(☘️☘️☘️numberofSection)
recyclerView = findViewById(R.id.recycleView_staff);
recyclerView.setLayoutManager(new LinearLayoutManager(this));//決定要列表或格子
recyclerView.setAdapter(new Lesson11Adapter(new ArrayList()));
recyclerView.addItemDecoration(new DividerItemDecoration(this, DividerItemDecoration.VERTICAL));//分隔線
reloadData
嗎?
可以去 https://github.com/mark33699/IDLA 看一下順便給顆⭐️
如果你喜歡我的影片別忘了按讚分享加訂閱,開啟紅色的小鈴鐺,我們明天見~