마스터Q&A
접속유지
가입하기
안드로이드 Q&A
최근 질문
미답변 질문
태그
사용자
질문하기
마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다.
안드로이드펍
에서 운영하고 있습니다. [
사용법
,
운영진
]
인기있는 태그
초보어플개발
(3427)
안드로이드스튜디오
(2664)
안드로이드-초보어플개발
(1333)
안드로이드-스튜디오
(1086)
도와주세요-
(995)
이미지
(970)
listview
(866)
리스트뷰
(844)
오류
(805)
레이아웃
(693)
fragment
(675)
webview
(670)
서버에서 보내는 메시지를 실시간으로 텍스트 뷰에 넣는법
0
추천
기존 소스가 버튼누르면 에디트텍스트에 있는값을 서버로 보내고 서버는 받자마자 그값을 되돌려주면
다시 받아서 텍스트뷰에 띄우는데
버튼을 누르지않고 서버에서 메시지 보내면 바로바로 텍스트뷰에 띄우려면 어떻게 해야하나요 ?
안드로이드
서버
텍스트뷰
엘희
(
500
포인트)
님이
2014년 3월 26일
질문
버튼을 눌러야만 서버에서 메시지를 받을 수 있나요?
네 음.. 1번클라이언트에서 a,b,c,d,e 순으로 서버로 보내고
2번클라이언트에서 f를 보내면 텍스트뷰에 버튼한번에 a 한번더누르면 b 식으로 오네요 oncreate에 넣으면 시작과동시에 멈춰버리고 조건같은걸줘야하는거같은데 잘모르겟어요 ㅠㅠ
해당 부분에대한 소스코드가 있으면 답변이 더 수월할꺼같네요.
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mHandler = new Handler();
final EditText et = (EditText) findViewById(R.id.ed_msg);
Button btn = (Button) findViewById(R.id.btn_send);
tv = (TextView) findViewById(R.id.txt_chat);
try {
Socket socket = new Socket(ip, port);
reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
toServer = new DataOutputStream(socket.getOutputStream());
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
btn.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
//tv.setText(et.getText().toString());
try {
if (et.getText().toString() != null && !et.getText().toString().equals("")) {
toServer.writeUTF(et.getText().toString());
toServer.flush();
et.setText(null);
}
tv.append(reader.readLine()+"\n");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
}
}
일단 이런식이거든요 ..ㅠ_ㅠ
Please
log in
or
register
to add a comment.
답변 달기
·
글에 소스 코드 보기 좋게 넣는 법
·
질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
답변이 채택되거나 답변에 댓글이 달리면 이메일로 알려드립니다:
답변이 채택되거나 댓글이 달리면 이메일로 알려드립니다
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면
로그인
하거나 혹은
가입
하세요.
1개의 답변
+1
추천
채택된 답변
가장 간단한 건 쓰레드를 만들어서 그 안에서 몇초의 딜레이를 주고 무한반복으로 서버에서 읽어오는 게 제일 쉬울 것 같구요. 알람매니저를 이용해 할수도 있고. 메세지 오브젝트를 만들어 핸들러에 딜레이를 주고 실행도 가능하고 여러가지 방법이있습니다. 지금 전화기로 쓰는 중이라 예제는 검색해보시라고 할 수 밖에 없네요 죄송 ㅜㅜ
AndroidDictator
(
1,660
포인트)
님이
2014년 3월 27일
답변
엘희
님이
2014년 4월 8일
채택됨
Please
log in
or
register
to add a comment.
...