Android中的班级间通信

时间:2013-01-10 07:45:03

标签: android class communication

我有一个名为TCPClient的类(在Android中),它从服务器接收一个字符串。我需要将其发送到类printmsg中的函数Showmsg,该函数与TCPClient位于同一个包中。
以下代码不起作用。

public class TCPClient implements Runnable {  
    ..   
    ..  
    public void run() {  
        ..  
        Showmsg obj = new Showmsg();  
        obj.printmsg("Hello");  
    }  
}  

在课程Showmsg中:

public void printmsg(String str) {    
    Toast( . . );    
}

1 个答案:

答案 0 :(得分:1)

我在给定代码中没有看到的是.start(),因为TCPClientRunnable。另外,我不知道你的toast(str)方法是如何工作的,但不要忘记.show()。这段代码应该运行。

public class TCPClient implements Runnable {  
    public void run() {  
        Showmsg obj = new Showmsg();  
        obj.printmsg("Hello");  
    }  
}  

public class MyActivity {
    TCPClient tcp;

    public void onCreate(Bundle b) {
        super.onCreate(b);
        tcp = new TCPClient();
    }

    public void onResume() {
        super.onResume();
        tcp.start();
    }

}

public class Showmsg {
    public void printmsg(String str) {    
        toast(str);
    }

    private void toast(String str) {
        Log.d(TAG, str);
        Toast.makeText(context, str, Toast.LENGTH_SHORT).show();
        System.out.println(str);
    }
}