将函数发送到新线程

时间:2011-12-24 21:07:27

标签: java android multithreading

在Android上,当我在Mapview上映射地址时,我必须等待该操作返回,然后我的用户被控制回来,所以我想知道如何将该功能发送到另一个线程?

mapLocationButton.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {

                mapCurrentAddress(); //Send this function to new thread
            }
        });

如何做到这一点?新线程在完成后会如何响应?

3 个答案:

答案 0 :(得分:3)

Android提供AsyncTask类来做到这一点。阅读http://developer.android.com/reference/android/os/AsyncTask.html

答案 1 :(得分:3)

您可以使用AsyncTask在后台执行此操作。请检查此example

答案 2 :(得分:-1)

Button button1 = (Button) findViewById(R.id.button1);

button1.setOnClickListener(new OnClickListener() {


    public void onClick(View v) {

p_dialog = ProgressDialog.show((activity_name).this, "", "Loading Image...");

            new Thread(new Runnable() {
                public void run() {
                    function();
                }
            }).start();


    }