设置android小部件的初始滚动位置

设置android小部件的初始滚动位置,第1张

概述我有一个基于集合的小部件,我想更改初始滚动位置.我已经在我的RemoteViewsFactory中尝试过以下方法.views.setScrollPosition(R.id.widgetList,myDesiredPosition);AppWidgetManager.getInstance(mContext).partiallyUpdateAppWidget(mAppWidgetId,views);但

我有一个基于集合的小部件,我想更改初始滚动位置.

我已经在我的RemoteVIEwsFactory中尝试过以下方法.

       vIEws.setScrollposition(R.ID.WidgetList, myDesiredposition);       AppWidgetManager.getInstance(mContext).partiallyUpdateAppWidget(mAppWidgetID, vIEws);

但不幸的是它不起作用..我也试图在我的WidgetProvIDer中设置该权限,但是没有起作用.
所以,请..有没有办法改变包裹到远程视图的列表视图的滚动位置?谢谢..

解决方法:

我已经在RemoteVIEwsService.RemoteVIEwsFactory的onDataSetChanged函数中完成了此 *** 作.我必须添加一个AsynTask来延迟滚动.如果getLoadingVIEw返回的视图与getVIEwAt返回的所有视图的高度相同,则可能不需要这样做.

@OverrIDepublic voID onDataSetChanged() {    new AsyncTask<Integer, VoID, VoID>() {        @OverrIDe        protected VoID doInBackground(Integer[] params) {            int WidgetID = params[0];            int count = params[1];            try {                Thread.sleep(800);            } catch (InterruptedException e) {                Log.d(TAG, "Scroll thread was interrupted");            }            String packagename = context.getPackagename();            RemoteVIEws rv = new RemoteVIEws(packagename, R.layout.Widget_layout);            rv.setInt(R.ID.List_vIEw, "smoothScrollToposition", count);            AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);            appWidgetManager.partiallyUpdateAppWidget(WidgetID, rv);            return null;        }    }.execute(this.appWidgetID, this.rowCount);}
总结

以上是内存溢出为你收集整理的设置android小部件的初始滚动位置全部内容,希望文章能够帮你解决设置android小部件的初始滚动位置所遇到的程序开发问题。

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

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

原文地址:https://54852.com/web/1075864.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存