level 1
chen513902
楼主
1.主activity 里面接收处理消息
package com.example.administrator.myapplication;
import android.os.Handler;
import android.os.Message;
import android.support.v7.app.AppCompatActivity
import android.os.Bundle;
import android.content.Context;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import android.util.*;
import android.util.Log;
import android.app.Application;
import android.app.Activity;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
public static MainActivity context;
// handleMessage接收并处理信息
private Handler handler = new Handler()
public void handleMessage(Message msg) {
Log.i("子此案从2:","子线程"+msg);
switch (msg.what){
case 1:
Log.i("子此案从3:","子线程"+msg);
Toast toast= Toast.makeText(MainActivity.this,msg.obj.toString(),Toast.LENGTH_LONG);
break;
}
}
};
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
handlerThreadmsg.threadsendmsg("123");
context=this;
}
}
2.在另外一个类里面新建一个线程,发送消息
package com.example.administrator.myapplication;
import android.app.AlertDialog;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.widget.Button;
import android.widget.TextView;
import android.support.v7.app.AppCompatActivity;
//import android.support.v7.app.AlertDialog;
//import android.content.DialogInterface;
import android.os.Bundle;
import android.content.Context;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import android.util.*;
import android.util.Log;
import android.app.Application;
import android.app.Activity;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.*;
import android.widget.EditText;
/**
* Created by Administrator on 2023/4/2.
*/
public class handlerThreadmsg {
private static Handler handler=new Handler();
public static void threadsendmsg(final String msg1) {
Log.i("子此案从0:","子线程"+msg1);
new Thread(new Runnable() {
public void run()
Message msg = Message.obtain();
msg.obj = msg1;
Log.i("子此案从1:","子线程"+msg1);
msg.what = 1;
//子线程发送消息
handler.sendMessage(msg);//发送消息到handler
Log.i("子此案从1-1:","子线程"+msg1);
}
}).start();
}
}
2023年04月02日 18点04分
1
package com.example.administrator.myapplication;
import android.os.Handler;
import android.os.Message;
import android.support.v7.app.AppCompatActivity
import android.os.Bundle;
import android.content.Context;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import android.util.*;
import android.util.Log;
import android.app.Application;
import android.app.Activity;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
public static MainActivity context;
// handleMessage接收并处理信息
private Handler handler = new Handler()
public void handleMessage(Message msg) {
Log.i("子此案从2:","子线程"+msg);
switch (msg.what){
case 1:
Log.i("子此案从3:","子线程"+msg);
Toast toast= Toast.makeText(MainActivity.this,msg.obj.toString(),Toast.LENGTH_LONG);
break;
}
}
};
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
handlerThreadmsg.threadsendmsg("123");
context=this;
}
}
2.在另外一个类里面新建一个线程,发送消息
package com.example.administrator.myapplication;
import android.app.AlertDialog;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.widget.Button;
import android.widget.TextView;
import android.support.v7.app.AppCompatActivity;
//import android.support.v7.app.AlertDialog;
//import android.content.DialogInterface;
import android.os.Bundle;
import android.content.Context;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import android.util.*;
import android.util.Log;
import android.app.Application;
import android.app.Activity;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.*;
import android.widget.EditText;
/**
* Created by Administrator on 2023/4/2.
*/
public class handlerThreadmsg {
private static Handler handler=new Handler();
public static void threadsendmsg(final String msg1) {
Log.i("子此案从0:","子线程"+msg1);
new Thread(new Runnable() {
public void run()
Message msg = Message.obtain();
msg.obj = msg1;
Log.i("子此案从1:","子线程"+msg1);
msg.what = 1;
//子线程发送消息
handler.sendMessage(msg);//发送消息到handler
Log.i("子此案从1-1:","子线程"+msg1);
}
}).start();
}
}