发送一个请求执行progressbar加载条,直到服务器有响应就关闭progressbar
private void login(){
myHandler.sendEmptyMessage(1);
new Thread(){
@Override
public void run() {
// TODO Auto-generated method stub
super.run();
String mobilePhone=et_mobile_phone.getText().toString();
String pwd=etPwd.getText().toString();
if(mobilePhone.length()<=0){
Toast.makeText(mainActivity.this, "请填写用户名", Toast.LENGTH_LONG).show();
return;
}
if(pwd.length()<=0){
Toast.makeText(mainActivity.this, "请填写密码", Toast.LENGTH_LONG).show();
return;
}
String httpGetString = null;
try {
httpGetString = httpClient.httpGet("login", "?mobilePhone="+mobilePhone+"&password="+pwd);
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
ArrayList<String> getJson = null;
try {
getJson = httpClient.getResponse(httpGetString,"user");
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(getJson.get(0).equals("0")){
backCode=0;
Log.i("login", " "+getJson.get(1));
Log.i("login", " "+getJson.get(2));
backStr=getJson.get(2);
}
else {
backCode=-1;
backStr=getJson.get(1);
}
myHandler.sendEmptyMessage(0);
}
}.start();
}
Handler myHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch (msg.what) {
case 1:
progressBar.setVisibility(View.VISIBLE);
break;
case 0:
progressBar.setVisibility(View.GONE);
if(backCode==-1){
Toast.makeText(mainActivity.this, backStr, Toast.LENGTH_SHORT).show();
}
else {
settings.edit().putString(KEY, backStr).commit();
intent=new Intent(mainActivity.this,orderActivity.class);
startActivity(intent);
}
break;
default:
break;
}
}
};
分享到:
相关推荐
总之,要在ListView中添加并控制每个Item的ProgressBar,你需要创建一个自定义适配器,将ProgressBar与数据模型关联,并在适配器的getView()方法中根据数据状态控制其显示和隐藏。同时,别忘了优化视图复用来提升...
本文将深入探讨如何在多线程环境中控制`ProgressBar`的更新,以实现异步操作,提高程序的响应速度。 标题中的“多线程控制`ProgressBar`”指的是在程序执行耗时任务时,通过多线程技术在后台处理工作,同时主线程...
当涉及到“progressbar加音量控制”时,我们通常是指在音量调整过程中使用`ProgressBar`来可视化表示当前音量的级别。这通常是通过创建一个自定义视图实现的,以便将音量滑块和进度条结合在一起,提供用户友好的音量...
在IT领域,登录控制与进度条是用户界面(UI)设计中的重要元素,它们极大地提升了用户体验。本实例代码“ProgressBar”专注于这两个功能的实现,旨在帮助开发者更好地理解和应用到自己的项目中。 首先,我们来详细...
这个压缩包"Android中通过SeekBar手动控制ProgressBar与模拟下载自动更新进度条示例代码.zip"包含了一个示例项目,让我们来详细探讨这两个组件的使用方法。 首先,SeekBar在Android中的使用: SeekBar是一个可滑动...
在Android开发中,ProgressBar是用户界面中非常常见的一种组件,用于表示某个操作的进度或等待状态。本主题聚焦于“带动画的横向ProgressBar”,这种组件能够以动态的方式展示进度变化,提升用户体验。以下是对这个...
在Android开发中,...这个案例展示了如何利用XML资源文件来定义和控制ProgressBar的外观,这同样适用于其他Android组件的自定义。通过深入理解这些资源文件的用法,开发者能够更自由地创造出独特的用户界面。
通过深入学习和理解ProgressBar的源码,我们可以更好地控制和优化其在应用中的表现。提供的压缩包文件“Android ProgressBar 几乎全部的用法”应该包含了详细的示例代码和讲解,有助于开发者进一步掌握这些知识。
2. **Java代码控制**:在Java代码中,可以通过`ProgressBar`对象来控制进度条的显示和隐藏,以及设置进度值: ```java ProgressBar progressBar = findViewById(R.id.progressBar); progressBar.setVisibility(View....
这包括控制进度条的动画,如通过改变颜色、渐变效果等来增加视觉吸引力。 3. **线程安全**:由于UI更新必须在UI线程中进行,所以当后台任务更新进度时,需要确保操作是线程安全的。这可能涉及到`InvokeRequired`...
在Android开发中,`ProgressBar`是一个非常常见的组件,它用于展示任务执行的进度,比如文件下载、上传或者网络请求等。本教程将深入探讨如何利用`Handler`消息机制来实现`ProgressBar`的动态更新,展示进度条中进度...
在Android开发中,ProgressBar是用户界面(UI)设计中一个重要的元素,用于向用户展示某个操作的进度或者等待状态。通常,系统提供的ProgressBar样式有限,但开发者可以通过自定义来实现更多样化的效果,以满足不同...
在这个场景中,我们需要使用线程技术来控制`ProgressBar`在10秒内逐渐填充,以模拟一个耗时操作的进度。下面将详细介绍如何实现这个功能。 首先,我们了解`ProgressBar`的基本用法。`ProgressBar`控件有两种主要的...
在Windows Forms应用开发中,`Timer`控件和`ProgressBar`控件是非常常见的元素,尤其在构建交互式用户界面时。这两个控件在游戏编程中也有广泛的应用,可以帮助提升用户体验和游戏流畅性。下面我们将详细探讨这两个...
在Windows应用程序开发中,进度条(ProgressBar)是一个非常常见的组件,用于向用户显示某个操作的进度,例如文件复制、解压或下载等。在C#的Winform环境中,我们可以使用ProgressBar控件来实现这一功能。这个组件...
通过`setVisibility()`方法,可以控制进度条的可见性。`View.VISIBLE`使其可见,`View.INVISIBLE`使进度条不可见但保留空间,`View.GONE`则完全移除进度条。 9. **结合其他组件** ProgressBar常与Button、...
在Windows Forms(Winform)开发中,`ProgressBar`控件常用于显示任务进度或等待状态。然而,系统默认的`ProgressBar`样式较为简单,可能无法满足开发者对于界面美观度的需求。`winform c# ProgressBar特殊样式style...
在Android开发中,ProgressBar是用户界面中常见的组件,用于指示某个操作的进度或者等待状态。在默认情况下,ProgressBar的进度条通常为单色。然而,通过自定义,我们可以实现更丰富的视觉效果,例如颜色渐变的...
3. **控制旋转进度条** 对于旋转ProgressBar,一旦调用`startAnimation()`,它就会开始旋转;调用`stop()`会使旋转停止。但请注意,旋转ProgressBar没有实际的进度概念,它仅用于表示正在进行的操作。 4. **使用...
样式可能包含触发器(Trigger)来控制气泡何时出现、位置如何调整,以及颜色、字体等视觉效果。 在实际应用中,可以使用 Blend for Visual Studio 打开项目,这是一个强大的设计工具,可以帮助开发者直观地编辑XAML...