Android进度条未显示
Android进度条未显示,android,progress-bar,Android,Progress Bar,private Handler handler = new Handler() { @Override public void handleMessage(Message msg) { removeDialog(0); switch (msg.what) { case SUCCESS: Log.i("LoginActivity", "Got inputstream");
private Handler handler = new Handler()
{
@Override
public void handleMessage(Message msg)
{
removeDialog(0);
switch (msg.what)
{
case SUCCESS:
Log.i("LoginActivity", "Got inputstream");
final InputStream is = (InputStream)msg.obj;
if (is != null)
{
//TODO: examine the input stream, etc...
}
break;
case FAILURE:
Log.i("LoginActivity", "Login failed");
//TODO: Failure handling
break;
default:
break;
}
}
};
@Override
protected Dialog onCreateDialog(int id)
{
switch (id)
{
case 0:
{
dialog = new ProgressDialog(this);
dialog.setMessage("Please wait...");
dialog.setIndeterminate(true);
dialog.setCancelable(true);
return dialog;
}
}
return null;
}
public void loginRequest(String name,String password)
{
showDialog(0);
loginThread thread = new loginThread(serverURL, name, password,getMyIMENumber(), handler);
thread.start();
}
public类loginThread扩展线程{
字符串名;
字符串密码;
输入流为;
字符串Url;
字符串输入法;
私人最终处理人;
public loginThread(字符串Url、字符串名称、字符串密码、字符串ime、最终处理程序){
this.name=名称;
this.Url=Url;
this.password=密码;
this.ime=ime;
this.handler=handler;
}
公开募捐{
试一试{
HttpClient HttpClient=新的DefaultHttpClient();
字符串loginURL=Url+“成员/登录”;
HttpPost HttpPost=新的HttpPost(loginURL);
HttpParams httpParameters=新的BasicHttpParams();
列表对=新的ArrayList();
if(name.contentEquals(“”)
{
添加(新的BasicNameValuePair(“ime”,ime));
}
其他的
{
添加(新的BasicNameValuePair(“用户名”,名称));
添加(新的BasicNameValuePair(“密码”,password));
}
int timeoutConnection=3000;
HttpConnectionParams.setConnectionTimeout(httpParameters,timeoutConnection);
//设置默认套接字超时(SO\U超时)
//以毫秒为单位,这是等待数据的超时。
setEntity(新的UrlEncodedFormEntity(对));
HttpResponse response=httpClient.execute(httppost);
HttpEntity=response.getEntity();
最终输入流为=entity.getContent();
消息消息=新消息();
message.obj=is;
message.what=server.SUCCESS;
handler.sendMessage(message);
}捕获(例外e){
Log.e(“Log_标记”,“http连接错误”+e.toString(),e);
handler.sendEmptyMessage(server.FAILURE);
}
}
}
进度对话框没有显示我做错了什么!!请帮帮我
private Handler handler = new Handler()
{
@Override
public void handleMessage(Message msg)
{
removeDialog(0);
switch (msg.what)
{
case SUCCESS:
Log.i("LoginActivity", "Got inputstream");
final InputStream is = (InputStream)msg.obj;
if (is != null)
{
//TODO: examine the input stream, etc...
}
break;
case FAILURE:
Log.i("LoginActivity", "Login failed");
//TODO: Failure handling
break;
default:
break;
}
}
};
@Override
protected Dialog onCreateDialog(int id)
{
switch (id)
{
case 0:
{
dialog = new ProgressDialog(this);
dialog.setMessage("Please wait...");
dialog.setIndeterminate(true);
dialog.setCancelable(true);
return dialog;
}
}
return null;
}
public void loginRequest(String name,String password)
{
showDialog(0);
loginThread thread = new loginThread(serverURL, name, password,getMyIMENumber(), handler);
thread.start();
}
//从DexFile.java编译(版本1.5:49.0,超级位) 公共最终类dalvik.system.dex文件{ //方法描述符#8(Ljava/io/File;)V //堆栈:3,本地值:2 public DexFile(java.io.File文件)抛出java.io.IOException; 0 aload_0[此] 1调用特殊的java.lang.Object()[1] 4新的java.lang.RuntimeException[2] 7次重复 8最不发达国家[3] 10调用特殊的java.lang.RuntimeException(java.lang.String)[4] 13阿思罗 行号: [个人计算机:0,第4行] 局部变量表: [pc:0,pc:14]本地:此索引:0类型:dalvik.system.DexFile [pc:0,pc:14]本地:文件索引:1类型:java.io.file //方法描述符#18(Ljava/lang/String;)V //堆栈:3,本地值:2 public DexFile(java.lang.String文件名)抛出java.io.IOException; 0 aload_0[此] 1调用特殊的java.lang.Object()[1] 4新的java.lang.RuntimeException[2] 7次重复 8最不发达国家[3] 10调用特殊的java.lang.RuntimeException(java.lang.String)[4] 13阿思罗 行号: [个人计算机:0,第5行] 局部变量表: [pc:0,pc:14]本地:此索引:0类型:dalvik.system.DexFile [pc:0,pc:14]本地:文件名索引:1类型:java.lang.String //方法描述符#22(Ljava/lang/String;Ljava/lang/String;I)Ldalvik/system/DexFile; //堆栈:3,本地值:3 public static dalvik.system.DexFile loadDex(java.lang.String sourcePathName、java.lang.String outputPathName、int标志)抛出java.io.IOException; 0新java.lang.RuntimeException[2] 3次重复 4最不发达国家[3] 6调用特殊的java.lang.RuntimeException(java.lang.String)[4] 9阿思罗 行号: [个人计算机:0,第6行] 局部变量表: [pc:0,pc:10]本地:源路径名索引:0类型:java.lang.String [pc:0,pc:10]本地:outputPathName索引:1类型:java.lang.String [pc:0,pc:10]本地:标志索引:2类型:int //方法描述符#28()Ljava/lang/String; //堆栈:3,局部变量:1 public java.lang.String getName(); 0新java.lang.RuntimeException[2] 3次重复 4最不发达国家[3] 6调用特殊的java.lang.RuntimeException(java.lang.String)[4] 9阿思罗 行号: [个人计算机:0,第7行] 局部变量表: [pc:0,pc:10]本地:此索引:0类型:dalvik.system.DexFile //方法描述符#30()V //堆栈:3,局部变量:1 public void close()抛出java.io.IOException; 0新java.lang.RuntimeException[2] 3次重复 4最不发达国家[3] 6调用特殊的java.lang.RuntimeException(java.lang.String)[4] 9阿思罗 行号: [个人计算机:0,第8行] 局部变量表: [pc:0,pc:10]本地:此索引:0类型:dalvik.system.DexFile //方法描述符#32(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Class; //堆栈:3,本地值:3 public java.lang.Class loadClass(java.lang.String名称,java.lang.ClassLoader); 0新java.lang.RuntimeException[2] 3次重复 4最不发达国家[3] 6调用特殊的java.lang.RuntimeException(java.lang.String)[4] 9阿思罗 行号: [个人计算机:0,第9行] 局部变量表: [pc:0,pc:10]本地:此索引:0类型:dalvik.system.DexFile [pc:0,pc:10]本地:名称索引:1类型:java.lang.String [pc:0,pc:10]本地:加载程序索引:2类型:java.lang.ClassLoader //方法描述符#37()Ljava/util/Enumeration; //签名:()Ljava/util/Enumeration; //堆栈:3,局部变量:1 public java.util.Enumeration entries(); 0新java.lang.RuntimeException[2]
Thread thread = new Thread(new loginThread(serverURL, name, password,getMyIMENumber()));
thread.start();
do this in your showProgressDialog method -- mDialog.show();
public static final int FAILURE = 0;
public static final int SUCCESS = 1;
private ProgressDialog dialog;
private Handler handler = new Handler()
{
@Override
public void handleMessage(Message msg)
{
removeDialog(0);
switch (msg.what)
{
case SUCCESS:
Log.i("LoginActivity", "Got inputstream");
final InputStream is = (InputStream)msg.obj;
if (is != null)
{
//TODO: examine the input stream, etc...
}
break;
case FAILURE:
Log.i("LoginActivity", "Login failed");
//TODO: Failure handling
break;
default:
break;
}
}
};
@Override
protected Dialog onCreateDialog(int id)
{
switch (id)
{
case 0:
{
dialog = new ProgressDialog(this);
dialog.setMessage("Please wait...");
dialog.setIndeterminate(true);
dialog.setCancelable(true);
return dialog;
}
}
return null;
}
public void loginRequest(String name, String password)
{
showDialog(0);
LoginThread thread = new LoginThread(serverURL, name, password,
getMyIMENumber(), handler);
thread.start();
}
public class LoginThread extends Thread
{
private final String name;
private final String password;
private final String url;
private final String ime;
private final Handler handler;
public LoginThread(String Url, String name, String password,
String ime, final Handler handler)
{
this.name = name;
this.url = Url;
this.password = password;
this.ime = ime;
this.handler = handler;
}
public void run()
{
try
{
HttpClient httpClient = new DefaultHttpClient();
String loginURL = url + "member/login";
HttpPost httppost = new HttpPost(loginURL);
HttpParams httpParameters = new BasicHttpParams();
List<NameValuePair> pairs = new ArrayList<NameValuePair>();
if (name.contentEquals(""))
{
pairs.add(new BasicNameValuePair("ime", ime));
}
else
{
pairs.add(new BasicNameValuePair("userName", name));
pairs.add(new BasicNameValuePair("password", password));
}
int timeoutConnection = 3000;
HttpConnectionParams.setConnectionTimeout(httpParameters,
timeoutConnection);
// Set the default socket timeout (SO_TIMEOUT)
// in milliseconds which is the timeout for waiting for data.
httppost.setEntity(new UrlEncodedFormEntity(pairs));
HttpResponse response = httpClient.execute(httppost);
HttpEntity entity = response.getEntity();
final InputStream is = entity.getContent();
Message message = new Message();
message.obj = is;
message.what = LoginActivity.SUCCESS;
handler.sendMessage(message);
}
catch (Exception e)
{
Log.e("log_tag", "Error in http connection " + e.toString(), e);
handler.sendEmptyMessage(LoginActivity.FAILURE);
}
}
}