5

我正在构建一个具有多个视图并翻转视图的 appWidget。基本上,它正在工作。但我不知道如何以编程方式停止 RemoteViews 中的视图翻转。

这是用于翻转的 xml 布局

<ViewFlipper android:id="@+id/vf_slot_0"
    android:layout_width="fill_parent" android:layout_height="75dp"
    android:autoStart="true"
    android:flipInterval="10000">

这是代码

RemoteViews mViews = new RemoteViews(context.getPackageName(), R.id.flipping_view);
mViews.setBoolean(R.id.vf_slot_0, "setAutoStart", false);
mViews.setInt(R.id.vf_slot_0, "setFlipInterval", 1000);

'setFlipInterval' 正在工作。我可以使用此代码以编程方式更改翻转间隔。但'setAutoStart' 不是。并得到这个错误..

08-19 01:45:38.821: WARN/AppWidgetHostView(2889): android.widget.RemoteViews$ActionException: view: android.widget.ViewFlipper can't use method with RemoteViews: setAutoStart(boolean)

想知道为什么我不能使用 'setAutoStart' 而我可以使用 'setFlipInterval'。有什么方法可以以编程方式开始或停止在我的 appWidget 中翻转图像?

4

2 回答 2

1

我试图找到我读到这篇文章的地方,但如果我没记错的话,如果设置为不可见,ViewFlipper 就会停止。但是我现在好像找不到了。因此,如果这是真的,请尝试:

mViews.setViewVisibility(R.id.vf_slot_0, View.INVISIBLE); 
于 2012-02-08T04:02:44.543 回答
0

我想我必须通过声明不支持 RemoteViews 的 setAutoStart 方法来结束它。

于 2015-05-12T16:15:27.840 回答