单击某个项目后如何关闭回收站视图持有人?

时间:2019-03-31 17:15:04

标签: java android android-recyclerview recycler-adapter inputmethodmanager

我正在尝试关闭视图持有者(在编辑文本中搜索后显示的项目列表)。但是我找不到合适的功能或方法! 有帮助吗?

我有一个搜索适配器,我尝试覆盖onBindViewHolder并尝试在此处关闭回收站视图。但是我在努力寻找正确的功能或方式。

@Override
    public void onBindViewHolder(final SearchViewHolder holder, int position) {

        holder.full_name.setText(fullNameList.get(position));
        holder.full_name.setBackgroundColor(selectedPos == position ? Color.GREEN : Color.LTGRAY);

        holder.full_name.setOnClickListener(new View.OnClickListener() {


            @Override
            public void onClick(final View v) {


                if (holder.getAdapterPosition() == RecyclerView.NO_POSITION) return;
                notifyItemChanged(selectedPos);
                selectedPos = holder.getLayoutPosition();
                notifyItemChanged(selectedPos);
                Toast.makeText(context, ((TextView) v).getText(), Toast.LENGTH_SHORT).show(); //Here I get the text string


                // close keyboard on click

                v.clearFocus();
                InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);
                if (imm != null) {
                        imm.hideSoftInputFromWindow(v.getWindowToken(), 0);
                }



            }
        });
    }

1 个答案:

答案 0 :(得分:1)

您的问题不清楚。 您也许可以清除fullNameList并进行notifychange?

#include <stdio.h>

int main() {
    int x;
    if (scanf("%d", &x) == 1) {
        for (int mask = 128; mask != 0; mask = mask / 2) {
            printf("%d", (x & mask) != 0);
        }
        printf("\n");
    }
    return 0;
}

尽管AutoCompleteTextView应该可以很好地完成工作。