当前位置: 首页 > 知识库问答 >
问题:

使listview移动到最后一个项目位置

祖麻雀
2023-03-14

当新项目添加到视图中时,我试图使我的listview移动到最后一个项目。有了textview,我可以通过这样做来实现这一点

Layout layout = MyView.getLayout();
        if(layout != null){
            int scrollDelta = layout.getLineBottom(MyView.getLineCount() - 1) 
                - MyView.getScrollY() - MyView.getHeight();
            if(scrollDelta > 0)
                MyView.scrollBy(0, scrollDelta);
        }

但对于带有适配器的listview,我似乎无法找到调用的方法。我的适配器设置

MyView = (ListView) findviewById(R.id.MyView_list);
MyAdapter = new ArrayAdapter<>(this, R.layout.list, Entries);
MyView.setAdapter(MyAdapter);

共有2个答案

令狐俊风
2023-03-14

您可以使用列表的抄本模式属性...如下-lv.set抄本模式(ListView.TRANSCRIPT_MODE_NORMAL);

欲了解更多信息,请参阅-http://developer.android.com/reference/android/widget/AbsListView.html#TRANSCRIPT_MODE_NORMAL

屈晨
2023-03-14

使用smicthScrollToPotion(int位置)。这将滚动列表视图,以便传入的元素在屏幕上。如果您不知道项目的数量,请使用listView.smoothScrollToPotions(adapter.getCount());

 类似资料:
  • 我有一个复杂对象的数组列表。我需要将这些框中的特定元素移动到arrayList的最后一个位置,并移除原始元素,如图所示: 我的代码是这样的,但我得到了这个错误:

  • 问题内容: 我想从中删除一个项目,但是我不知道该怎么做。 这是我的代码… 我想删除一个项目,指导我执行此操作。 问题答案: 如果您不想显示项目0,只需调整其大小并更改for循环即可: 如果您想在应用程序运行时删除项目,建议您使用a 而不是a :

  • 我使用JavaFX ListView作为聊天应用程序的聊天室主体。当消息到来或正在发送时,我会添加到listview。这很好,但我总是不得不滚动找到最新的消息。有没有任何方法,我可以自动滚动到底部,以便显示最新的消息,而不必一直向下滚动?

  • 问题内容: 当我不知道行数时,是否可以使网格项目从第一行到最后一行? 可以说我有以下HTML,其中的框数未知。 如何使第一个网格线到最后一个网格线的第三个跨度? 问题答案: 您可以将grid-row-start添加到该框中的css,并将其设置为跨越一个非常大的数字。 编辑-免责声明: 这是非最佳解决方案,并非在所有浏览器中都有效,请当心!尽管这在某些浏览器(Chrome)中似乎可行,但其他浏览器(

  • 问题内容: 我的目标是每当文件滚动到此滚动文件时,该文件也会移动到另一个目录,因此在原始目录中始终只有。这可能使用吗?还是默认库中的另一个appender ? 问题答案: 我想你的意思是来自Log4J 如果您使用版本> = 1.2.16和log4j-extras,则可以使用此版本 重要的是 但是您必须确保该文件夹(在此示例中存在

  • “我的列表视图”项包含一个“删除”按钮,我在适配器中将其设置为从数据库中删除该项。完成后,如何刷新包含listView的片段以删除该项?相关代码如下: 删除适配器中的项功能: listview在我的片段中是这样设置的: 谢谢 更新: 现在我已经将子项目上的OnClickListener从适配器传递到片段ListView OnItemClickListener,如下所示: 更新适配器 更新片段 但现