当RecyclerView为空时显示内容

时间:2018-06-01 15:29:04

标签: android android-recyclerview kotlin

我试图通过设置文本

在RecyclerView为空时显示一些文本
android:visibility="gone"

并制作

android:visibility="visible"

当RecyclerView为空时,我试图在有人删除RecyclerView的最后一项时应用它。

换句话说,我想在删除RecyclerView的最后一项时显示文本。

2 个答案:

答案 0 :(得分:0)

尝试使用此代码进行删除:

ItemTouchHelper itemTouchHelper = new ItemTouchHelper(simpleItemTouchCallback);
itemTouchHelper.attachToRecyclerView(rv);

现在是回调,

ItemTouchHelper.SimpleCallback simpleItemTouchCallback = new ItemTouchHelper.SimpleCallback(0, ItemTouchHelper.LEFT | ItemTouchHelper.RIGHT | ItemTouchHelper.DOWN | ItemTouchHelper.UP) {

        @Override
        public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) {
            Toast.makeText(MyActivity.this, "on Move", Toast.LENGTH_SHORT).show();
            return false;
        }

        @Override
        public void onSwiped(RecyclerView.ViewHolder viewHolder, int swipeDir) {
            Toast.makeText(MyActivity.this, "on Swiped ", Toast.LENGTH_SHORT).show();
            //Remove swiped item from list and notify the RecyclerView
            final int position = viewHolder.getAdapterPosition();
            adapter.notifyItemRemoved(position);
        }
 };

您现在可以识别您的哪个项目已被刷过。您可以从适配器中删除该项目,并notifyDataSetChanged()

答案 1 :(得分:0)

public void manageEmptyView() { if (perticularFragmentsAdapter.getItemCount() == 0) { rv_perticularfragment_listing.setVisibility(View.GONE); txt_ParticualrFragment_emptyVIew.setVisibility(View.VISIBLE); } }

在您的活动中复制上述方法,并通过将您的活动作为上下文传递,从适配器的delete事件中调用此方法。