Java-Android:设置RecyclerView项的重力

Java-Android:设置RecyclerView项的重力,第1张

概述我有一个像列表一样的recyclerView,当我删除一个项目时,所有其他项目都向上移动,我希望它们向下移动.我正在考虑将重力设置为项目,或反转适配器中的位置,使底部位置为0.我的适配器(自定义):publicclassAddEventsAdapterextendsHFRecyclerViewAdapter<String,AddEventsAdapte

我有一个像列表一样的recyclerVIEw,当我删除一个项目时,所有其他项目都向上移动,我希望它们向下移动.我正在考虑将重力设置为项目,或反转适配器中的位置,使底部位置为0.

我的适配器(自定义):

public class AddEventsAdapter extends HFRecyclerVIEwAdapter<String, AddEventsAdapter.VIEwHolder> {    public AddEventsAdapter(Context context) {        super(context);    }    @OverrIDe    public voID footerOnVisibleItem() {    }    @OverrIDe    public voID addData(int position, String item) {        super.addData(position, item);    }    @OverrIDe    public VIEwHolder onCreateDataItemVIEwHolder(VIEwGroup parent, int vIEwType) {        VIEw v = LayoutInflater.from(parent.getContext())                .inflate(R.layout.data_item, parent, false);        return new VIEwHolder(v);    }    @OverrIDe    public voID onBindDataItemVIEwHolder(VIEwHolder holder, int position) {        holder.itemTv.setText(getData().get(position));    }    class VIEwHolder extends RecyclerVIEw.VIEwHolder{        TextVIEw itemTv;        linearLayout theLayout;        public VIEwHolder(VIEw itemVIEw) {            super(itemVIEw);            itemTv = (TextVIEw)itemVIEw.findVIEwByID(R.ID.itemTv);            theLayout = (linearLayout)itemVIEw.findVIEwByID(R.ID.layout2);            theLayout.setonClickListener(new VIEw.OnClickListener() {                @OverrIDe                public voID onClick(VIEw v) {                    removeData(getAdapterposition());                }            });        }    }}

实现方式:

    AddEventsAdapter myAdapter = new AddEventsAdapter(this);    assert layout != null;    layout.setAdapter(myAdapter);    layout.setLayoutManager(new linearlayoutmanager(this));    VIEw footerVIEw = LayoutInflater.from(this).inflate(R.layout.footer, layout, false);    myAdapter.setFooterVIEw(footerVIEw);    ArrayList<String> data = new ArrayList<>();    for (int i=0; i<8; i++){        data.add(String.format("Item %d", i));    }    myAdapter.setData(data);

解决方法:

通过将此行添加到LayoutManager来解决:.setReverseLayout(true);

总结

以上是内存溢出为你收集整理的Java-Android:设置RecyclerView项的重力全部内容,希望文章能够帮你解决Java-Android:设置RecyclerView项的重力所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1090559.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存