今天要加一个进度条进来,也就是用一个新的线程进行通讯罢了,以登录为例,代码如下:
private ProgressDialog progressDialog = null;
private Handler mHandler = new Handler(){
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case AUTH_FAIL: {
Toast.makeText(LoginActivity.this, "您输入的用户名或密码不正确。", Toast.LENGTH_SHORT).show();
break;
}
default:
break;
}
}
};
login(){
progressDialog = ProgressDialog.show(LoginActivity.this, "请稍等...","登录到系统中...", true);
new Thread() {
public void run() {
doLogin();...
if (成功) {
跳转其它页面
}else{
Message msg = new Message();
msg.what = AUTH_FAIL;
LoginActivity.this.mHandler.sendMessage(msg);
}
}
}
碰到的异常:
1 android.view.ViewRoot$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.---子线程操作了界面的控件,在子线程中去掉相关的界面控件操作即可,加个handler来处理。
2 Can't create handler inside thread that has not called Looper.prepare()
跟第一个问题原因一样,有handler了,但还是子线程操作了界面的控件,在子线程中去掉相关的界面控件操作即可。
相关的知识点可以看一下:
http://www.android123.com.cn/androidkaifa/422.html
Thread和Looper以及Handler和Message详解 Android开发必读
分享到:
相关推荐
此外,为了处理网络状况变化、用户中断下载等场景,还可以在`DownloadTask`中添加相应的异常处理和暂停/恢复功能。在实际应用中,还可以考虑使用Notification来展示下载进度,以便在后台运行时通知用户。 总结起来...
这个"Android FTP上传带进度条DEMO"是为Android开发者设计的一个示例项目,展示了如何实现通过FTP进行文件上传,并同时显示上传进度。下面我们将深入探讨这个DEMO涉及到的关键知识点。 1. **FTP客户端库**:为了在...
在Android开发中,实现文件下载并实时更新进度条是一个常见的需求。这个项目“android下载文件进度条时时更新”是针对初学者设计的,旨在教授如何在Android应用中创建一个简单的文件下载功能,并实时显示下载进度。...
- 创建一个进度条控件,如`ProgressBar`,并将其添加到UI布局中。 - 设置进度条的最大值为ZIP文件的总大小(可以通过遍历ZIP条目获取)。 - 在解压过程中,每次写入数据后,更新进度条的当前值。 - 可以使用...
这个“Android带进度条简易浏览器项目源码.zip”文件是一个包含源代码的压缩包,用于构建一个具有进度条功能的简单Android浏览器应用。通过分析这个项目,我们可以学习到多个关键的Android开发知识点: 1. **...
在`res/layout`目录下新建一个XML布局文件,例如`activity_progress.xml`,并添加以下代码以创建一个水平进度条: ```xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:...
在Android开发中,有时...总结起来,实现Android应用中的带进度条解压文件夹功能,主要步骤包括:引入解压库、创建进度条UI、编写解压函数并添加进度更新回调。通过这些步骤,我们可以为用户提供更加友好的解压体验。
SeekBar是Android中的一个进度条控件,用于显示和调整进度。在音频播放器中,我们可以利用`MediaPlayer.getCurrentPosition()`获取当前播放位置,`MediaPlayer.getDuration()`获取总时长,然后更新SeekBar的进度。 ...
然而,为了提升用户体验,开发者有时需要在标题栏上添加额外的功能元素,比如进度条。这就涉及到了如何在Android的标题栏上显示一个进度条,以及如何与后台任务进行协调来更新这个进度条。本篇将详细讲解这一知识点...
对于下载进度条,注释应包含以下内容:下载方法的实现、如何获取和更新进度、何时以及如何更新UI,以及任何特别的处理或异常情况。 6. **权限申请**: Android应用在进行网络请求和文件写入操作时,需要在`...
因此,我们需要添加适当的异常处理,确保即使在错误发生时,也能向用户传达清晰的错误信息。 在实际开发中,`FTPUploadPicWithProgress - 副本`可能是代码工程的一个副本,包含了一个实现上述功能的示例。这个示例...
在Android开发中,多线程下载以及UI进度条的实时刷新是常见的需求,尤其是在处理大文件下载时。本文将深入探讨如何实现这个功能,并参考了链接`http://blog.csdn.net/sky286753213/article/details/11770299`中的...
在每个FTP操作前后,都应添加异常捕获和处理代码,确保程序的健壮性。 8. **FTP会话管理**: - 完成FTP操作后,记得断开连接以释放资源。调用`logout()`和`disconnect()`方法结束FTP会话。 9. **权限申请**: - ...
### Android 文件下载进度条的实现 #### 背景与目的 在移动应用开发中,尤其是在Android平台上,文件下载是一项非常常见的功能需求。对于大型文件(如图片、视频等),提供一个进度条来显示下载进度不仅可以提升...
在Android开发中,进度条(LoadingProgress)是用户界面中常用的一种组件,它通常用于显示任务执行的进度,比如文件下载、视频加载等。SeekBar是Android SDK提供的一种可交互的进度条,允许用户通过手动拖动来改变或...
为每个任务添加异常处理逻辑,以便在出现问题时能够优雅地处理,如暂停任务、记录错误信息或提示用户。 8. **暂停与恢复** 用户可能希望在任何时候暂停或恢复下载。这需要在下载管理器中实现相应功能,通过改变...
在Android应用开发中,文件下载和进度条显示是常见的需求,特别是在处理大文件时,进度条可以提供良好的用户...为了使这个功能更加健壮和完善,开发者需要添加异常处理、多线程下载、断点续传、网络状态检查等功能。
当我们需要在Android应用中进行文件下载,并且希望在下载过程中展示进度条时,就需要结合Retrofit和RxJava来实现这一功能。本文将详细讲解如何使用Retrofit和RxJava实现带进度条的下载功能。 首先,我们需要理解...
在Android平台上,从Web服务器下载文件,如APK或MP3,并实时显示下载进度条,是常见的需求。这个过程涉及到网络编程、文件操作以及UI更新等多个技术环节。下面将详细介绍这些知识点。 首先,我们需要理解Android的...
本教程将深入探讨如何基于Android平台创建一个带有进度显示的圆形进度条。这个项目名为"Android高级应用源码-androd自定义有进度的圆形进度条",提供了一个完整的源码示例,供开发者参考和学习。 首先,我们要理解...