日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Android --- RecycleView 中默认选择第一个 item,点击第 2 个 item 时改变其字体样式,其余的 item 的字体样式恢复默认

發布時間:2025/3/21 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android --- RecycleView 中默认选择第一个 item,点击第 2 个 item 时改变其字体样式,其余的 item 的字体样式恢复默认 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

問題描述:

RecycleView 中默認選擇第一個 item,點擊第 2 個 item 時改變其字體樣式,其余的 item 的字體樣式恢復默認

代碼如下: 主要的參數是 mPosition

public class SubjectListAdapter extends RecyclerView.Adapter<SubjectListAdapter.MyViewHolder> {private List<String> dataList;private Context context;private List<Boolean> isClicks = new ArrayList<>(); // 控件是否被點擊,默認為 false,如果被點擊,改變值,控件根據值改變自身顏色private int mPosition = 0;//構造方法,傳入數據public SubjectListAdapter(Context context, List<String> dataList){this.context = context;this.dataList = dataList;}@NonNull@Overridepublic SubjectListAdapter.MyViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.subject_item, parent, false);MyViewHolder holder = new MyViewHolder(view);return holder;}@Overridepublic void onBindViewHolder(@NonNull MyViewHolder holder, int position) {final String subjectString = dataList.get(position);// 賦值holder.tv_subject_name.setText(subjectString);// 設置默認選擇第一個if (mPosition != position) {holder.tv_subject_name.setTextSize(12);holder.tv_subject_name.getPaint().setFakeBoldText(false);holder.rl_subject.setBackgroundResource(R.drawable.main_background);}else if (mPosition == position) {holder.tv_subject_name.setTextSize(14);holder.tv_subject_name.getPaint().setFakeBoldText(true);holder.rl_subject.setBackgroundResource(R.drawable.bag_subject_item_selected);}holder.rl_subject.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {mPosition = position; // 選中點擊的位置notifyDataSetChanged(); // 更新數據}});}@Overridepublic int getItemCount() {return dataList.size();}//內部類,綁定控件class MyViewHolder extends RecyclerView.ViewHolder{TextView tv_subject_name;LinearLayout rl_subject;public MyViewHolder(View view) {super(view);tv_subject_name = view.findViewById(R.id.tv_subject_name);rl_subject = view.findViewById(R.id.rl_subject);}}} 《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的Android --- RecycleView 中默认选择第一个 item,点击第 2 个 item 时改变其字体样式,其余的 item 的字体样式恢复默认的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。