recyclerview 全选 删除

本文介绍了如何在Android应用中使用RecyclerView实现全选和删除功能。通过在MainActivity中设置监听事件,处理全选和编辑模式的切换。同时,自定义适配器MineRadioAdapter以配合这种模式,并使用DividerItemDecoration作为列表的分割线。文章还提到了Fresco库的初始化,并且暗示了可能有依赖项的引用。
摘要由CSDN通过智能技术生成

效果图

点击编辑后的状态

//Fresco的初始化
public class App extends Application{
@Override
public void onCreate() {
super.onCreate();
Fresco.initialize(this);
}
}
//activity中

public class MainActivity extends AppCompatActivity implements View.OnClickListener , MineRadioAdapter.OnItemClickListener{
private static final int MYLIVE_MODE_CHECK = 0;
private static final int MYLIVE_MODE_EDIT = 1;

@InjectView(R.id.recyclerview)
RecyclerView mRecyclerview;
@InjectView(R.id.tv_select_num)
TextView mTvSelectNum;
@InjectView(R.id.btn_delete)
Button mBtnDelete;
@InjectView(R.id.select_all)
TextView mSelectAll;
@InjectView(R.id.ll_mycollection_bottom_dialog)
LinearLayout mLlMycollectionBottomDialog;
@InjectView(R.id.btn_editor)
TextView mBtnEditor;
private MineRadioAdapter mRadioAdapter = null;
private List<MusicBean.SongListBean> mList = new ArrayList<>();
private int mEditMode = MYLIVE_MODE_CHECK;
private boolean isSelectAll = false;
private boolean editorStatus = false;
private int index = 0;
private TextView mFTv;
private MusicBean myLiveList;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    ButterKnife.inject(this);
    initView();
    initData();
    initListener();
}

private void initView() {
    mFTv = (TextView) findViewById(R.id.tv_f);
    mFTv.setOnClickListener(this);
}
//设置适配器加载布局管理器,设置分割线,加载数据
private void initData() {
    mRadioAdapter = new MineRadioAdapter(MainActivity.this);
    mRecyclerview.setLayoutManager(new LinearLayoutManager(MainActivity.this));
    DividerItemDecoration itemDecorationHeader = new DividerItemDecoration(MainActivity.this, DividerItemDecoration.VERTICAL_LIST);
    itemDecorationHeader.setDividerDrawable(ContextCompat.getDrawable(MainActivity.this, R.drawable.divider_main_bg_height_1));
    mRecyclerview.setAdapter(mRadioAdapter);
    mRecyclerview.addItemDecoration(itemDecorationHeader);
    OkHttpUtils.getInstance().doGet("http://tingapi.ting.baidu.com/v1/restserver/ting?method=baidu.ting.billboard.billList&type=1&size=20&offset=0", new OnUiCallback() {
        @Override
        public void onFailed(Call call, IOException e) {
            Toast.makeText(MainActivity.this, "失败", Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onSuccess(String result) throws IOException {
            Gson gson = new Gson();
            MusicBean bean = gson.fromJson(result, MusicBean.class);
            mList.addAll(bean.getSong_list());
            mRadioAdapter.notifyAdapter(mList, false);
        }
    });
}

/**
 * 根据选择的数量是否为0来判断按钮的是否可点击.
 *
 * @param size
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值