如何使用Android从onPostExecute返回值并在MainActivity中显示?

如何使用Android从onPostExecute返回值并在MainActivity中显示?,android,background,android-asynctask,Android,Background,Android Asynctask,我正在Android中编写代码,使用异步任务在后台线程中打印值进程。我正在onPostExecute函数的后台线程中显示该值。但我想在完成后台处理后在MainActivity中显示该值 Java代码 package com.example.mydoinbackground; import android.os.AsyncTask; import android.os.Bundle; import android.widget.TextView; import android.app.Activ

我正在Android中编写代码,使用异步任务在后台线程中打印值进程。我正在onPostExecute函数的后台线程中显示该值。但我想在完成后台处理后在MainActivity中显示该值

Java代码

package com.example.mydoinbackground;

import android.os.AsyncTask;
import android.os.Bundle;
import android.widget.TextView;
import android.app.Activity;


public class MainActivity extends Activity 
{

TextView tt;

String x , y ,z;

@Override
protected void onCreate(Bundle savedInstanceState) 
{

    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_main);

    tt = (TextView)findViewById(R.id.txt);

    x = "Android";

    y = "Apple";

    z = "Microsoft";

    MyTest mt = new MyTest();

    mt.execute();

            /// I want to display the result here ///

}

private class MyTest extends AsyncTask<String,Void,String>
{

        @Override
        protected String doInBackground(String... arg0)
        {

                String z1 = x+" "+y+" "+z;

                return z1;

        }

        protected void onPostExecute(String result) 
        {

                tt.setText(result);

        }

}}
package com.example.mydoinbackground;
导入android.os.AsyncTask;
导入android.os.Bundle;
导入android.widget.TextView;
导入android.app.Activity;
公共类MainActivity扩展了活动
{
文本视图tt;
字符串x,y,z;
@凌驾
创建时受保护的void(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tt=(TextView)findViewById(R.id.txt);
x=“安卓”;
y=“苹果”;
z=“微软”;
MyTest mt=新的MyTest();
mt.execute();
///我想在这里显示结果///
}
私有类MyTest扩展了异步任务
{
@凌驾
受保护的字符串doInBackground(字符串…arg0)
{
字符串z1=x+“”+y+“”+z;
返回z1;
}
受保护的void onPostExecute(字符串结果)
{
tt.setText(结果);
}
}}
这就是上面的代码。我在onPostExecute中得到了正确的结果,并且显示正确,但我想在onCreate MainActivity中显示结果


请给我一些好的解决方案。

正确的方法是在启动
异步任务时启动
进程对话框
,初始化并在
异步任务
onPreExecute()
方法中显示
进程对话框
。获得结果后,
hide()

somevalue = new MyTask().execute();
这本书对你很有用