현재 통신 프로그램을 만들고 있는데요
서버에서 데이타를 받아서 리스트뷰로 목록을 보여줄려고 하는데 자꾸 오류가 납니다;;
|
public class Client_Database_Test extends Activity { final static String TAG = "Client_Database_Test"; |
|
ArrayList<STRING> arraylist = null; |
|
ArrayAdapter<STRING> arrayadapter = null; |
|
public void onCreate(Bundle savedInstanceState) { |
|
super.onCreate(savedInstanceState); |
|
setContentView(R.layout.main); |
|
arraylist = new ArrayList<STRING>(); |
|
arrayadapter = new ArrayAdapter<STRING>(this, android.R.layout.simple_list_item_multiple_choice, arraylist); |
|
ListView listview = (ListView) findViewById(R.id.listview); |
|
listview.setAdapter(arrayadapter); |
|
listview.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE); |
|
class ReceiveRunnable implements Runnable { |
|
InputStreamReader streamReader; |
|
ReceiveRunnable(Socket socket) { |
|
streamReader = new InputStreamReader(socket.getInputStream()); |
|
reader = new BufferedReader(streamReader); |
|
} catch(IOException io) {} |
|
String message = reader.readLine(); |
|
Log.d(TAG, "Receive Server Data"); |
|
Message msg = handler.obtainMessage(); |
|
b.putString("message", message); |
|
handler.sendMessage(msg); |
|
} catch(IOException io) { |
|
Log.v(TAG, "Receive Error Server Data"); |
|
Handler handler = new Handler() { |
|
public void handleMessage(Message msg) { |
|
Bundle b = msg.getData(); |
|
message(b.getString("message")); |
|
public void message(String msg) { |
|
Toast.makeText(Client_Database_Test.this, "받은 메세지 : " + msg, Toast.LENGTH_SHORT).show(); |
|
arrayadapter.notifyDataSetChanged(); |
맨 아래쪽에 message() 메소드 부분에서는 arraylist.add(msg)가 왜 안먹히는건 알겠는데요...
msg 내용을 리스트뷰로 보여주고 싶거든요..
이런 경우에는 어떤 방법으로 public void onCreate(Bundle savedInstanceState) <== 이 부분으로 넘겨줄수 있는지 궁금합니다
답변 좀 부탁드립니다~~
arraylist.add(msg);// 서버에서 받은 데이타를 리스트뷰로 출력-->
arrayadapter.add(msg);// 이렇게 바꿔 보실래요?