2011-01-28 48 views
2

我有一个按钮,点击上加载RSS feed.i要加载进度条,直到我的列表opens.i已经创建了一个进度条,它的工作原理,但我按下按钮返回到主菜单中的进度条会再次出现和它不停止(甚至没有让我看到我的菜单)。这是我的代码Android的进度问题

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);在它内部重置您的视图。您可能需要再次将侦听器添加到按钮。