質問

ViewFlipperの簡単な実装でサポートが必要です。フリッパーは、アクティビティの作成で「Ws.Addview(ChildView)」を膨らませると完璧に機能します。

すべての子供をフリッパーから削除し、AddView(子)メソッドを介して別の束を追加したいときに問題に遭遇します。私は、フリッパーのコンテンツをリフレッシュするという望ましい効果を生成しないと思われるフリッパーのonfinishinflate()および無効なメソッドを呼び出しようとしています。フリッパーの眺めは空白です。 AddViewループの後にフリッパーに子供が含まれているかどうかを確認しましたが、私の場合は数が> 1です。誰かが私を助けることができることを願っています。

                ws.removeAllViews();
                ArrayList<View> childViews = getAllChildrenFromSomewhere();
                for (View childView : childViews) {
                    ws.addView(childView);
                }
                ws.onFinishTemporaryDetach();

                ws.onFinishInflate();
                ws.invalidate();    

よろしくお願いします

役に立ちましたか?

解決

私は自分の質問に対する答えを見つけることができました。私はすべての子供たちをビューフリッパーから削除していましたが、次のステップは新しい子供をビューフリッパーに追加することでした。すべての子供を削除し、視界を無効にすることは、子供が選択されていないため、空白のビューになりました。新しい子供だけを追加し、再びビューを無効にすることで、ビューフリッパーは空白のままでした。 ws.shownext()を使用してws.invalidate()を使用すると、新しい子供の最初の子供が表示され、ビューフリッパーが期待どおりに機能します。お役に立てれば。

            ws.removeAllViews();
            ArrayList<View> childViews = getAllChildrenFromSomewhere();
            for (View childView : childViews) {
                ws.addView(childView);
            }
            ws.onFinishTemporaryDetach();

            ws.onFinishInflate();
            ws.invalidate();  
            // show the first childView
            ws.showNext();

よろしく、ハッピーコーディング:-)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top