我有一个后端进程正在运行(AsyncTask)。我有兴趣打印出 System.out.println(); 将信息发送到屏幕(类似于 Eclipse 中的控制台),以便通知用户哪些计算正在后面运行。
我希望完成的是看到在屏幕上运行的文本 - 类似于当前焦点活动顶部的对话框。
有没有人有这方面的经验?
感谢:D。
我有一个后端进程正在运行(AsyncTask)。我有兴趣打印出 System.out.println(); 将信息发送到屏幕(类似于 Eclipse 中的控制台),以便通知用户哪些计算正在后面运行。
我希望完成的是看到在屏幕上运行的文本 - 类似于当前焦点活动顶部的对话框。
有没有人有这方面的经验?
感谢:D。
我不认为您可以劫持 System.out.print() 并将其发送到屏幕。但是您可以制作一个 TextView 并在新的文本行准备好时将它们发送给它。像这样的东西应该工作。
String outputStr = "";
//Whenever you want to add a line to the TextView do it like this:
outputStr += "\n" + [yourNewText];
mTxt.setText(outputStr);
如果您要以这种方式添加大量行,用户会看到与 Eclipse 控制台相同的情况。
由于您可以使用 TextView 执行此操作,因此您可以将该 TextView 添加到自定义对话框并将其显示给用户。
我相信您还需要在 UI 线程中更新文本视图。在异步任务中,您调用onProgressUpdate,然后在 UI 线程中执行。否则,您可以使用view.post或使用Handler。