【发布时间】:2017-02-22 08:20:57
【问题描述】:
我有一个从文件中获取字符串并将其放入名为 username 的字符串变量中的方法,因为从文件中读取需要时间,我希望在函数完成之前出现一个 progressDialog,preogress 对话框确实出现但是当我使用 progressDialog.dismiss(); 时不会被解雇;
这是代码:
public String loadUserFromFile(){
progressDialog = new ProgressDialog(this);
progressDialog.setTitle("Please wait...");
progressDialog.setMessage("Loading User");
progressDialog.show();
String username = "default";
String fileName = "savedUserFile.txt";
FileInputStream fis;
try {
fis = openFileInput(fileName);
InputStreamReader inputStreamReader = new InputStreamReader(fis);
BufferedReader br = new BufferedReader(inputStreamReader);
username = br.readLine();
br.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
username = username.replaceAll("\\s+","");
progressDialog.dismiss();
return username;
}
【问题讨论】:
-
尝试调试看看执行是否真的到了dismiss方法。你的代码在我看来不错。
-
在两个 catch 中调用驳回
-
在两个catch块中调用dismiss都有效,谢谢
标签: java android android-studio progressdialog