我正在编写一个应用程序,它在开始时下载数据并更新数据库。由于这需要相当长的时间,我想向用户显示一个进度条和一些关于目前所做工作的文本信息。
我的代码:
public class MainActivity extends Activity {
private static final String TAG = "MainActivity";
public static int count = 0;
public static File path;
private ProgressBar myProgressBar;
private int myProgress = 0;
private TextView textView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
myProgressBar=(ProgressBar)findViewById(R.id.progressbar_Horizontal);
textView = (TextView) findViewById(R.id.show_progress);
new Thread(progressBarThread).start();
...
... 更新数据 ...
Intent showList = new Intent(this, ListFragmentActivity.class);
startActivity(showList);
}
private Runnable progressBarThread = new Runnable(){
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(){
@Override
public void handleMessage(Message msg) {
// TODO Auto-generated method stub
//
myProgressBar.setProgress(myProgress);
}
};
};
}
我尝试手动设置进度,例如使用 myProgress=60; 和 textView.setText("Die Datenbank wird aktualisiert.");
不幸的是,没有显示 ProgressBar,也没有显示文本信息。
在此先感谢您的帮助。