2011-01-28 10 views
2

私はボタンをクリックしてロードしています。rss feed.iリストが開くまでプログレスバーをロードします。私はプログレスバーを作成しましたが、私は戻るボタンを押してメインメニュープログレスバーが再び表示され、それが停止(とさえ私のメニューを見てみましょうではない)does notの.thisは私のコードandroid progressBar problem

ProgressBar myProgressBar; 
    int myProgress = 0; 

/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle icicle) { 
    super.onCreate(icicle); 
    setContentView(R.layout.main1); 

    Button nea = (Button) findViewById(R.id.nea); 
    nea.setOnClickListener(new View.OnClickListener() { 
    public void onClick (View view) { 
    setContentView(R.layout.bar); 

    myProgressBar=(ProgressBar)findViewById(R.id.bar); 

      new Thread(myThread).start(); 

    Intent myIntent = new Intent(view.getContext(), nea.class); 
    startActivityForResult(myIntent, 0); 


    } 

    }); 

} 

、その後、のonCreateのうち

private Runnable myThread = new Runnable(){ 

    @Override 
    public void run() { 
    // TODO Auto-generated method stub 
    while (myProgress<100){ 
     try{ 
     myHandle.sendMessage(myHandle.obtainMessage()); 
     Thread.sleep(1000); 
     } 
     catch(Throwable t){ 
     } 
    } 
    } 

    Handler myHandle = new Handler(){ 

    public void handleMessage(Message msg) { 
     // TODO Auto-generated method stub 
     myProgress++; 
     myProgressBar.setProgress(myProgress); 
    } 
    }; 
     }; 

答えて

0

あなたのアクティビティISNですあなたが開始したstartActivityForResultアクティビティから戻るときに再作成されないので、contentViewはstucですkはR.layout.barです。

onActivityResult(int requestCode、int resultCode、Intent data)メソッドと をオーバーライドしてください。setContentView(R.layout.main1);あなたのビューをリセットするためにその中に。リスナーをボタンにもう一度追加する必要があります。