2011-10-23 18 views
8
にsetProgressDrawableする方法はありません

私は中ProgressBarsetProgressDrawableを呼び出すためにしようとしている私のRemoteViews
しかし、私が試したsetBitmapRemoveViewssetDrawable(<view_id>,<method>,<value>)方法があるようには表示されませんが、DrawableないBitmapsetProgressDrawable取りsetIntも機能しません。RemoteViews

さまざまな色の進行状況バーを処理するために、異なるウィジェットレイアウトxmlファイルがたくさんあることを避けたかったのです。

+0

私は同意します。 SDKは、LayoutInflatorを使用してProgressBarへのポインタをインスタンス化することができますが、アクションは発生していないようです。 ProgressBarがAppWidgetコンポーネントである場合、setProgressDrawable()、bringToFront()、または悪名高いsetProgress-and-setMax-2回の回避策では違いはありません。レイアウトXMLとコード内のオブジェクトポインタの間に切断があるかのように動作します。 –

+0

@HunterD少なくともそれは私だけではない、問題はまだICSにも存在する:( – Rob

答えて

1

これを行う方法はありません。私のソリューションは、別々のレイアウトファイルを作成するのではなく、異なるprogressDrawablesを持つすべての異なるProgressBarsを含むソリューションでした。コードでは、それらのうちの1つだけを表示させる必要があります。

古いAndroid版の場合は、プログレスバーのsetViewVisibilityを直接呼び出すことはできません。トリックは、各バーの周りに単純なLinearLayoutをラップし、代わりにこのラッパーを非表示にすることです。私のためにうまく動作します。

関連する問題