웹뷰를 파싱중 게시판 목록 가져올때 각각 리스트처럼 보여지게 설정가능한가요??
아래 소스로하면.. 파싱은되는데 목록처럼안나오고 모두 연결되어 나오네요,, 방법이있나요??
소스 =============
package com.test;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import android.app.Activity;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Button;
public class TestActivity extends Activity {
public final String URL_FOR_WEBVIEW ="http://www.etorrent.co.kr/bbs/board.php?bo_table=torrent_0notice";
WebView webView;
StringBuilder outPutStringBuilder;
String htmlString;
ProgressDialog mProgressDialog;
Handler mHandler;
boolean isStartAppending;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
webView = (WebView) findViewById(R.id.webView1);
Button mButton02 = (Button) findViewById(R.id.button1);
WebViewClient client = new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
// TODO Auto-generated method stub
super.onPageFinished(view, url);
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
webView.loadUrl("url);
return true;
}
};
webView.setWebViewClient(client);
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setBuiltInZoomControls(true);
webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
webView.getSettings().setLightTouchEnabled(true);
webView.getSettings().setSaveFormData(true);
webView.getSettings().setSavePassword(true);
mProgressDialog = new ProgressDialog(this);
mProgressDialog.setTitle("Now Loading");
mProgressDialog.setMessage("로딩중...");
mHandler = new Handler()
{
@Override
public void handleMessage(Message msg) {
mProgressDialog.dismiss();
super.handleMessage(msg);
}
};
mButton02.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
mProgressDialog.show();
new Thread(new Runnable() {
public void run() {
try {
HttpClient httpClient = new DefaultHttpClient();
HttpResponse response = httpClient.execute(new HttpGet(URL_FOR_WEBVIEW));
InputStream is = response.getEntity().getContent();
InputStreamReader isr = new InputStreamReader(is, "EUC_KR");
BufferedReader br = new BufferedReader(isr);
String readLines = null;
outPutStringBuilder = new StringBuilder();
isStartAppending=false;
while (true) {
readLines = br.readLine();
if (readLines.contains("<!-- 게시판 목록 끝 -->")) {
break;
}
if(readLines.contains("<!-- 목록 -->"))
{
isStartAppending=true;
}
if(isStartAppending)
{
outPutStringBuilder.append(readLines + "\n");
}
}
br.close();
htmlString = outPutStringBuilder.toString().replaceAll("width=\"8[0-9][0-9]","width=\"100%");
htmlString = htmlString.replaceAll("width=5[0-9][0-9]", "width=100%");
webView.loadDataWithBaseURL("URL_FOR_WEBVIEW, htmlString, "text/html", "utf-8",null);
mHandler.sendEmptyMessage(0);
} catch (Exception e) {
Log.e("에러사항", "" + e.getMessage());
}
}
}).start();
}
});
}
}
===================================================
스크린샷...




스크린샷이 엑박이라 -_-;; 어케 나오는지는 잘 알수없네요...
대충소스를 보면 outPutStringBuilder.append(readLines + "\n"); 에서
한줄마다 줄바꿈을 넣게 되어있는데요.
요 데이터를 가지고 파싱하여 배열을 만들어서 그 배열을 가지고 리스트뷰를 보여주면 될거 같습니다.
대략적으로 아래와 같이...
String [] a = outPutStringBuilder.split("\n");
a배열을 가지고 리스트뷰를 만듭니다..