私のプログラムは、サーバーからいくつかのデータを取得します。通常は数秒かかります。私はこのための処理バーを生成したい。そして私はそれを生成する方法を知っています。しかし、どのように区別し、いつ閉じる処理バーを制御する。 私のプログラム:アンドロイド処理バーの問題
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
text1=(TextView)findViewById(R.id.textin);
but1=(Button)findViewById(R.id.send);
but2=(Button)findViewById(R.id.send2);
edit1=(EditText)findViewById(R.id.textout);
but1.setOnClickListener(new Button.OnClickListener()
{
public void onClick(View v) {
Socket socket=null;
String mesg=edit1.getText().toString()+"\r\n";
try {
socket=new Socket("localhost",30000);
//send information to server
PrintWriter out=new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())),true);
out.println(mesg);
//receive information from server
BufferedReader br=new BufferedReader(new InputStreamReader(socket.getInputStream()));
String mstr=br.readLine();
if(mstr!=null)
{
text1.setText(mstr);
}else
{
text1.setText("error");
}
out.close();
br.close();
socket.close();
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}catch(Exception e)
{
Log.e(DEBUG_TAG,e.toString());
}
}
});
}
これはクライアントプログラムです。データの量は本当に巨大です。だから私はどのように処理バーを行うことができます。どのように制御できますか? ありがとう!ここで