마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

리스트뷰안에 데이터 집어넣는 방법좀 가르켜주세요..(사진)

0 추천

php파일을 통해 받아온 데이터를 리스트뷰안에 넣고 싶은데 어떡하나요...ㅠㅠ

package com.example.androidproject;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;

public class MakerActivity extends Activity {

	Button button;
	TextView tvOutput;
	String resultData;
	SendHandler handler = new SendHandler();

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_maker);

		Button btnlock = (Button) findViewById(R.id.button1);
		tvOutput = (TextView) findViewById(R.id.textView1);
		
		////////////////////////////////////////////////////////////////////////////// 어뎁터, 리스트뷰
		final String[] mid = {
				"aaaaaa", "bbbbbbbbbbb", "ccccccccc", "11111111111"
		};
		
		ListView list = (ListView) findViewById(R.id.listView1);

		ArrayAdapter<String> adapter = new ArrayAdapter<String>(
				this, android.R.layout.simple_list_item_1, mid);
		list.setAdapter(adapter);

		list.setOnItemClickListener(new AdapterView.OnItemClickListener() {

			public void onItemClick(AdapterView<?> arg0, View arg1,
					int arg2, long arg3) {
				// TODO Auto-generated method stub
				Toast.makeText(getApplicationContext(), mid[arg2],
						Toast.LENGTH_SHORT).show();
			}

		});
		/////////////////////////////////////////////////////////////////////////////////////
		btnlock.setOnClickListener(new View.OnClickListener() {

			public void onClick(View v) {
				// TODO Auto-generated method stub
				dblock();
			}
		});

	}

	private void dblock() {
		new Thread() {
			@Override
			public void run() {

				try {
					URL url = new URL("http://10.0.2.2/new/lock.php/");
					HttpURLConnection http;
					http = (HttpURLConnection) url.openConnection();
					InputStreamReader tmp = new InputStreamReader(
							http.getInputStream(), "EUC-KR");

					BufferedReader reader = new BufferedReader(tmp);
					StringBuilder builder = new StringBuilder();

					String str;
	
					while ((str = reader.readLine()) != null) {
						builder.append(str);
						builder.append("\n");
					}

					Message msg = handler.obtainMessage(2, builder.toString());
					handler.sendMessage(msg);

				} catch (Exception e) {
				}

			}
		}.start();

	}

	private class SendHandler extends Handler {
		@Override
		public void handleMessage(Message msg) {

			switch (msg.what) {
			case 1:
				Toast.makeText(getApplicationContext(), "DB에 INSERT 했습니다.",
						Toast.LENGTH_SHORT).show();
				break;
			case 2:
				resultData = msg.obj.toString();
				tvOutput.setText(resultData);
				break;
			default:
				Toast.makeText(getApplicationContext(), "what을 확인할수 없습니다...",
						Toast.LENGTH_SHORT).show();
				break;

			}
		}

	}

}

안드로이드경태 (170 포인트) 님이 2013년 6월 20일 질문

1개의 답변

0 추천

받아온 데이터를 ArrayList 에 담으신다음,

ArrayAdapter<String> adapter = new ArrayAdapter<String>(

this, android.R.layout.simple_list_item_1, "요부분에 받아온 데이터 리스트를 넣어주세요");

list.setAdapter(adapter);

도움이 되시길 바랍니다.

안드로메다개발자 (8,830 포인트) 님이 2013년 6월 20일 답변
받아온 데이터를 ArraryList에 담는게..
    String str;
                    while ((str = reader.readLine()) != null) {
                       
                        ArrayList<String> alist = new ArrayList<String>(str);
                       
                        builder.append(str);
                        builder.append("\n");               
                    }
이렇게 맞나요? 에러가 나서요 ㅜㅜ
파싱해서 받아온 부분 스샷좀 보여주실래요?
어디서 받아오셨는지 모르겠네요!
php 파일 말씀하시는건가요? ??
----------------------------------------------------------------------------
<?
$connect = mysql_connect("localhost:3306", "root", "apmsetup");
mysql_select_db("jongjin", $connect);
mysql_query("SET NAMES euckr");

$sqlSelect = "SELECT * from db";

$selectResult = mysql_query($sqlSelect);
while($row = mysql_fetch_assoc($selectResult)){
   
    echo $row["name"];
    echo ("\n");
}?>
----------------------------------------------------------------------------
여기 있습니다..감사해요 ㅜㅜ
php에서 안드로이드로 xml 파일을 보내셨잖아용?^^
그걸 안드로이드에서 파싱하신 부분이요!^^
파싱한건 없는데..ㅜㅜ
그냥 위에 자바 소스가 다에요...
MakerActivity.java 에서 php파일을 불러낸건데 ..
안드로이드랑 웹이랑 연동을 하실려면 파싱작업을 거치셔야 할듯하네요^^ 혹시 저 화면에서 버튼 밑에 리스트로 2013어쩌구 쭉나와있는게
받아오신건가요? 아니면 그냥 textview에 작성하신건가요?
파싱은 아니구요
2013년 얼음나라 ~~~
들이 전부다 mysql에 있는 db입니다...
데이터 다 받아온거에요 ㅎㅎㅎ
...