0

したがって、ユーザーが十分な大きさの画面を備えたデバイスを使用している場合、2 つのフラグメントが表示されます(like a Samsung Galaxy Tab)

現在、フラグメント リストを 2 回表示してい(same fragment twice)ます。フラグメントのコード内で、これを使用してプログレスバーを非表示にします。

ProgressBar pb = (ProgressBar)getActivity().findViewById(R.id.progress);
pb.setVisibility(View.GONE);

問題は、フラグメントの 1 つでしか機能しないことです。同じフラグメントなので、両方とも同じIDを持っていますか? 2 つの同一のフラグメントを作成する必要がありますか、それとも正しいフラグメントで「正しい」進行状況バーを見つけることは可能ですか?

4

1 に答える 1

2

ビュー ( ProgressBar) をアクティビティのビュー階層で見つけるのではなく、フラグメントのビュー階層で見つけます。したがって、フラグメント内で、次の操作を行います。

ProgressBar pb = (ProgressBar) getView().findViewById(R.id.progress);

一般に、親のビュー階層でルックアップを行いたくないため、上記は基本的にフラグメントのレイアウト内のすべてのビューに適用されます。

于 2012-12-28T10:14:56.513 に答える