【问题标题】:Android Widget: setSelection on ListViewAndroid 小部件:ListView 上的 setSelection
【发布时间】:2014-02-07 10:09:21
【问题描述】:

所以我正在开发我的第一个 Android Widget,主要由 ListView 组成。我正在使用RemoteViewsFactory 来填充列表视图,它工作正常,但我无法默认列表的选定索引。

通常ListView#setSelection 工作正常,但在这种情况下(使用RemoteViews)它似乎根本没有做任何事情。

我确定这是错误的做法,但在 AppWidgetProvider#onUpdate 我正在执行以下操作:

 RemoteViews widget = new RemoteViews(context.getPackageName(), R.layout.widget);
 widget.setRemoteAdapter(R.id.widget_list, svcIntent);

 Log.i(TAG, "Setting selection: " + position);
 widget.setInt(R.id.widget_list, "setSelection", position);

我假设它不起作用,因为由于集合视图的异步性质,列表尚未填充,但我不确定我什至可以把它放在哪里。

目标是在用户第一次看到小部件时,在与它交互之前,以及列表每次更改(每小时)时,列表都会滚动到特定项目。

任何帮助将不胜感激!

【问题讨论】:

    标签: android listview android-widget


    【解决方案1】:

    widget.setScrollPosition(R.id.widget_list, position);

    【讨论】:

    • 您应该稍微扩展一下这个答案。单行代码虽然正确,但通常对 OP 帮助不大。
    猜你喜欢
    • 1970-01-01
    • 2015-05-29
    • 2016-11-17
    • 1970-01-01
    • 2018-03-25
    • 1970-01-01
    • 2018-02-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多