class IPClient의 String ip 에 주소 값을 받아왔는데 아래 쪽의 소켓 통신 구현한 외부 클래스로 받아온 ip 주소 값을 넘기려는
데 넘겨지지가 않네요. private String serverIP = new IPClient().ip; 이런 식으로 하면 안되는 건가요?
어떻게 해야 값을 넘길 수 있는지 답변 주시면 감사하겠습니다.
public class IPClient extends Activity{
/** Called when the activity is first created. */
public String ip; // 이전 액티비티에서 getIntent().getExtras().getString("address"); 로 주소값을 받아왔습니다.
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.tab);
ip = getIntent().getExtras().getString("address");
Log.i("ipcheck","IP:" +ip);
((ImageButton)findViewById(R.id.Imgbtn1)).setOnClickListener(new Button01Click());
((ImageButton)findViewById(R.id.Imgbtn2)).setOnClickListener(new Button02Click());
((ImageButton)findViewById(R.id.Imgbtn3)).setOnClickListener(new Button03Click());
((ImageButton)findViewById(R.id.Imgbtn4)).setOnClickListener(new Button04Click());
}
}
class Button01Click implements OnClickListener{
public void onClick(View v){
TCPclient.select="1";
new TCPclient().run();
}
}
class Button02Click implements OnClickListener{
public void onClick(View v){
TCPclient.select="2";
new TCPclient().run();
}
}
class Button03Click implements OnClickListener{
public void onClick(View v){
TCPclient.select="3";
new TCPclient().run();
}
}
class Button04Click implements OnClickListener{
public void onClick(View v){
TCPclient.select="4";
new TCPclient().run();
}
}
class Socketclient implements Runnable{
private static final int ServerPort = 9000;
public static String select;
private String serverIP = new IPClient().ip;
public void run(){
try{
InetAddress serverAddr = InetAddress.getByName(serverIP);
Socket socket = new Socket(serverAddr, ServerPort);
PrintWriter out = new PrintWriter(new BufferedWriter(new
OutputStreamWriter(socket.getOutputStream())),true);
out.println(this.select);
socket.close();
}catch(Exception e){
}
}
}



