2010-12-02 4 views
0

私のアプリケーションの進捗バーを更新したいと思います。新しいビューで進捗バーを更新する

私はインフレータを使用して新しいビューを作成しました。その新しく作成されたビューでは、水平プログレスバーの更新を表示します。

どのようにすれば特にそうすることができますか?

また、Inflaterで新しいビューを作成するときに、addContentView()でCurrent Activity Classに追加する必要があることを知りましたが、私はたくさん試しましたが、これを行う方法はわかりません今。

誰でも私をここで助けることができますか?

答えて

3

コードを書いていないので、私のクリスタルボールを探すことができます。待って... OKです。あなたはこのようなものを持っている:

View someView = inflater.inflate(R.layout.view_with_progress_bar, null); 

findViewByIdメソッドを使用するには、持っているあなたのProgressBarにアクセスするために:あなたの現在の活動にプログレスバーを含むビューを追加するために

ProgressBar yourProgressBar = (ProgressBar)someView.findViewById(R.id.id_of_your_progress_bar); 
// you can know modify the progress bar: yourProgressBar.setBlahBlah 

以前に設定したコンテナへの参照が必要です。だから、私はあなたが以前に行ったと思います:setContentView(R.layout.something);、次にあなたはsomething.xmlと呼ばれるレイアウトを持っています。そのレイアウトにはViewGroupLinearLayoutRelativeLayoutなど;私のクリスタルボールはそれをはっきりと見ることができません)が含まれています。

あなたの答えのために多くのことを私のコードと感謝を投稿していないため申し訳ありません
// in your onCreate method 
setContentView(R.layout.something); 

// let's suppose it's a LinearLayout 
LinearLayout mainContainer = (LinearLayout)findViewById(R.id.id_you_gave_to_container); 

// blha blah... the rest of your code. Keep in mind that you will 
// probably have to declare the mainContainer outside the onCreate method 

// here, you have already inflated your view, and want to add it to your activity 
mainContainer.addView(someView); 
+0

(私は本当にあなたがかもしれないと考えている:次に、あなたは、そのコンテナにIDを設定した基準を作成し、そこに新たに作成したビューを追加する必要があります私のコードはちょうどあなたが示しているようにクリスタルボールを持っています)、この行をどこに書くべきか教えてください: "LinearLayout mainContainer =(LinearLayout)findViewById(R.id.id_you_gave_to_container);"なぜなら、実際には、BaseAdapterを拡張するクラスのButtonのClickイベントで自分のコードを実行しているからです。 もう一度ありがとうCristian。 –

関連する問題