解决方案 »

  1.   

    与楼上看法相同,直接finish当前,在前一个Activity的onActivityResult中进行操作就行
      

  2.   

    在要刷新的Activit调用startActivityForResult,并重写onActivityResult,在AlertDialog点击确定后调用setResult(RESULT_OK),并finish掉
      

  3.   

    当我点击按钮后,如果条件成立,则弹出alertDialog,但是现在弹不出来, if(Integer.parseInt(flag)>0){
    //更新成功
                 AlertDialog.Builder builder = new AlertDialog.Builder(InnerComm.this);
             builder.setIcon(R.drawable.c);
             builder.setTitle("提交成功!");
             builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
            
             @Override
             public void onClick(DialogInterface dialog, int which) {
             //showDialog("你选择了确定");
             Intent myIntent = new Intent();
                         myIntent = new Intent(InnerComm.this, Schedule.class);
                         startActivity(myIntent);
                         finish();
             }
             });        
    }
    为啥,断点跟踪过,条件是成立的
      

  4.   

    在要刷新的Activit的什么地方调用startActivityForResult,是OnCreate方法中吗
      

  5.   

    那个alertDialog中的确定,取消按钮必须成对出现吗
      

  6.   

    startActivityForResult就是回调方法,你可以看下具体用法
      

  7.   

    那个alertDialog中的确定,取消按钮必须成对出现吗
    不用,看你怎么配置的这个dialog
      

  8.   

    那个alertDialog中的确定,取消按钮必须成对出现吗
    不用,看你怎么配置的这个dialog
    我就这样配置的,但是却出不来
    AlertDialog.Builder builder = new AlertDialog.Builder(InnerComm.this);
             builder.setIcon(R.drawable.c);
             builder.setTitle("提交成功!");
             builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
            
             @Override
             public void onClick(DialogInterface dialog, int which) {
             //showDialog("你选择了确定");
             Intent myIntent = new Intent();
                         myIntent = new Intent(InnerComm.this, Schedule.class);
                         startActivity(myIntent);
                         setResult(RESULT_OK);
                         finish();
             }
             });      
      

  9.   

    其实按上面说的差不多有答案了。不过onResume你也可以考虑一下用不用
      

  10.   

    startActivityForResult回调函数就可以.demo:
    http://www.cnblogs.com/linjiqin/archive/2011/06/03/2071956.html
      

  11.   

    那个alertDialog中的确定,取消按钮必须成对出现吗
    不用,看你怎么配置的这个dialog
    我就这样配置的,但是却出不来
    AlertDialog.Builder builder = new AlertDialog.Builder(InnerComm.this);
             builder.setIcon(R.drawable.c);
             builder.setTitle("提交成功!");
             builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
            
             @Override
             public void onClick(DialogInterface dialog, int which) {
             //showDialog("你选择了确定");
             Intent myIntent = new Intent();
                         myIntent = new Intent(InnerComm.this, Schedule.class);
                         startActivity(myIntent);
                         setResult(RESULT_OK);
                         finish();
             }
             });      .create.show()呢?调用显示了?刷新的话,a中重写startActivityForResult,b中setresult,ok了
      

  12.   

    重写startActivityForResult是指重写这个方法吗?
      

  13.   

    一个类中能不能写两个内部类class MyHandler extends Handler用来处理与服务器连接后,查询数据再返回客户端
      

  14.   

    一个类中能不能写两个内部类class MyHandler extends Handler用来处理与服务器连接后,查询数据再返回客户端呵呵,你可以试试,明显不可以,用asynctask吧
      

  15.   

    一个类中能不能写两个内部类class MyHandler extends Handler用来处理与服务器连接后,查询数据再返回客户端呵呵,你可以试试,明显不可以,用asynctask吧
    asynctask是不是只要写一次,就能处理多个向服务器的请求
      

  16.   

    版主,你帮我看一下,我这个类里面是不是有写的不对的地方,还有就是可以简单的写法
    public class BorrowMoney extends Activity { private TextView borrow_date;
    private TextView theborrower;
    private TextView borrowmoney;
    private TextView moneyCAP;
    private TextView unit;
    private TextView thebank;
    private TextView reason;
    private Button buttonone;
    private MyHandler myhandler;
    private String guid;
    private String wfid;
    private String tablename;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    // TODO 自动生成的方法存根
    super.onCreate(savedInstanceState);
    setContentView(R.layout.borrowmoney);

    borrow_date = (TextView)findViewById(R.id.borrow_date);
    theborrower = (TextView)findViewById(R.id.theborrower);
    borrowmoney = (TextView)findViewById(R.id.borrowmoney);
    moneyCAP = (TextView)findViewById(R.id.moneyCAP);
    unit = (TextView)findViewById(R.id.unit);
    thebank = (TextView)findViewById(R.id.thebank);
    reason = (TextView)findViewById(R.id.borrowreason);

    Intent intent = this.getIntent(); 
    guid = intent.getStringExtra("guid");
    wfid = intent.getStringExtra("wfid");
    tablename = intent.getStringExtra("tablename");
    String dataJson=(String)intent.getSerializableExtra("dataJson");
    JSONObject jsonObject;
    //BuyContractDao buy = new BuyContractDao();
    try {
    jsonObject = new JSONObject(dataJson);
    borrow_date.setText(jsonObject.getString("borrowing_date"));
    theborrower.setText(URLDecoder.decode(jsonObject.getString("theBorrower"),"UTF-8"));
    borrowmoney.setText(jsonObject.getString("borrowing_Money"));
    moneyCAP.setText(URLDecoder.decode(jsonObject.getString("borrowing_Money_CAP"),"UTF-8"));
    unit.setText(URLDecoder.decode(jsonObject.getString("unit_name"),"UTF-8"));
    thebank.setText(URLDecoder.decode(jsonObject.getString("theBank"),"UTF-8"));
    reason.setText(URLDecoder.decode(jsonObject.getString("borrowing_reason"),"UTF-8"));
    //guid = jsonObject.getString("guid");
    } catch (JSONException e) {
    // TODO 自动生成的 catch 块
    e.printStackTrace();
    } catch (UnsupportedEncodingException e) {
    // TODO 自动生成的 catch 块
    e.printStackTrace();
    }

     // 生成一个HandlerThread对象,使用Looper来处理消息队列
            HandlerThread thread = new HandlerThread("MyThread");
            // 必须启动这个线程
            thread.start();        
            // 将一个线程绑定到Handler对象上,则该Handler对象就可以处理线程的消息队列
            myhandler = new MyHandler(thread.getLooper());
            // 从Handler中获取消息对象
            buttonone = (Button)findViewById(R.id.borrowbutton);
            buttonone.setOnClickListener(new OnClickListener(){ @Override
    public void onClick(View v) {
    submitButton();

    }
            
            });
    } public void submitButton(){
    AlertDialog.Builder builder = new AlertDialog.Builder(BorrowMoney.this);
    builder.setIcon(R.drawable.c);
    builder.setTitle("确定提交吗");
    builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {

    @Override
    public void onClick(DialogInterface dialog, int which) {
    //String op = opinion.getText().toString();

                    myhandler = new MyHandler();

    HandlerThread thread = new HandlerThread("MyThread");
    thread.start();
    myhandler = new MyHandler(thread.getLooper());
        Message msg = myhandler.obtainMessage();
        
        //更新表数据
        //String url2 = "http://192.168.0.90:8080/login/InnerCommUpdate";
        //更新流程表数据
        String url="http://192.168.0.90:8080/login/DealFlowServlet";

        Bundle b = new Bundle();  
        b.putString("url", url);
       // b.putString("url2", url2);
       // b.putString("opinion", op);
        msg.setData(b);  
        // 将msg对象发送给目标对象Handler
        msg.sendToTarget();
    }
    });     
    builder.setNegativeButton("取消", new DialogInterface.OnClickListener(){ @Override
    public void onClick(DialogInterface dialog, int which) {
    dialog.dismiss();

    }});
    builder.create();
    builder.show();
    }
    class MyHandler extends Handler { public MyHandler(){

    }
    public MyHandler(Looper looper){
    super(looper);
    }
    @Override
    public void handleMessage(Message msg) {
    Bundle b = msg.getData();
    String url = b.getString("url");

    List<NameValuePair> params = new ArrayList<NameValuePair>();
    params.add(new BasicNameValuePair("guid",guid));
    params.add(new BasicNameValuePair("wfid",wfid));
    List<NameValuePair> params2 = new ArrayList<NameValuePair>();
    params2.add(new BasicNameValuePair("guid",guid));
    params2.add(new BasicNameValuePair("tablename",tablename));

    ConnToServer data = new ConnToServer();

    String flag2 = data.post(url, params);
    flag2 = flag2.replace("\r", "");
    flag2 = flag2.replace("\n", "");

                if(Integer.parseInt(flag2)>0){
    //更新成功
                
                 AlertDialog.Builder builder = new AlertDialog.Builder(BorrowMoney.this);
             builder.setIcon(R.drawable.c);
             builder.setTitle("提交成功");
             builder.setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override
    public void onClick(DialogInterface dialog, int which) {
    myhandler = new MyHandler();

    HandlerThread thread = new HandlerThread("MyThread");
    thread.start();
    myhandler = new MyHandler(thread.getLooper());
        Message msg = myhandler.obtainMessage();
        
        //更新表数据
        //String url2 = "http://192.168.0.90:8080/login/InnerCommUpdate";
        //更新流程表数据
        String url="http://192.168.0.90:8080/login/ScheduleServlet";

        Bundle b = new Bundle();  
        b.putString("url", url);
        
        SharedPreferences sharedPre=getSharedPreferences("config", MODE_PRIVATE);
            String username=sharedPre.getString("username", "");
            
        b.putString("userid", username);
        msg.setData(b);  
        // 将msg对象发送给目标对象Handler
        msg.sendToTarget();
        
    Intent data=new Intent(); 
    data.putExtra("flag", "1");  
                setResult(RESULT_OK);  
                //关闭掉这个Activity  
                finish();  
    }        
             }); 
             builder.create();
             builder.show();
    }
    }
    }}
      

  17.   

    一个类中能不能写两个内部类class MyHandler extends Handler用来处理与服务器连接后,查询数据再返回客户端呵呵,你可以试试,明显不可以,用asynctask吧
    你能具体说说该怎么用吗,就是针对我想实现的功能