进入下一个议题。
实现的效果是,比如,产生俩个用户后,我点击一个(自己不应该能点,但是为了方便测试,暂时让他点),点了之后会生成新的Activity,然后返回不影响其他操作。
好像很简单的样子:
Intent intent = new Intent(MainActivity.this,Chat_Activity.class);
startActivity(intent);
两个语句就完事了。。好吧,把数据传递过去。。难点来了。。传数据,怎么传socket啊。。。序列化试了下,简直是不报错下的乱来。
所以Application还是要用的,有个博客感觉写的太复杂了,不好提取。看到一个不错的写法,分享一下:点击打开链接
然后分享一下我自己的写法(代码是这么分享的么。。一直用截图感觉更帅一点):
public class MyApp extends Application {
private String myState;
private ClientThread client;//客户端线程
public String getState() {
return myState;
}
public void setState(String s) {
myState = s;
}
public void setClient(ClientThread client){
this.client = client;
}
public ClientThread getClient(){
return client;
}
}
其余两个Activity
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//init
b_situation = false;
list_user_init ();//user init
final MyApp appState = ((MyApp)getApplicationContext());
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_chat_);
//init
MyApp appState = ((MyApp)getApplicationContext());
client = appState.getClient();
这是两个类的onCreate,就可以了