질문제목과 같이 webview 이미지 구현 문제떄문에 질문을 드리게됬습니다 ㅠㅠ
일단 제가 하려는것은 동광고등학교라는 사이트에 코드를 그대로 값을 가져와서 String으로 변환시킨뒤 그 값에서 이미지링크값을 잘라내여 webview로 출력하는 것을 구현하고 싶었지만.. 그것이 webview가 이미지로 나오는게아니라 수많은 코드? 그러한 비슷한값으로 출력이됩니다.. 네이버나 다른사이트는 잘되는데 왜 이것만 안되는것일까요 ㅠㅠ 문제는 일반 웹브라우저로도 직접 저 링크값을 입력해도 위에 설명한것처럼 깨져서 나오네요.. 어떻게 해야할지모르겟습니다 ㅠㅠ
제가 실수한것이나 수정해야할게 있다면 말씀부탁드립니다 ㅠㅠㅠㅠㅠ...
http://www.todayhumor.co.kr/board/view.php?table=databox&no=5605&s_no=5605&page=1
저위에는 webview출력화면 ㅠㅠ..
Handler mAfterDown = new Handler(){
@Override
public void handleMessage(Message msg){
String html = (String)msg.obj;//다른 클래스에서 제가 원하는 사이트 코드를 String으로 변환하여 만든값입니다
try{
int Ncpos01 = html.indexOf("tmpContentsArea");//String에서 이미지링크를 자를려고 범위를 압축시키기위해 범위를 지정하는 값입니다
int Ncpos02 = html.indexOf("boradReadFooter");//위와 동일
String tmp = "";//SubString값을 받기위한 임시변수값
tmp = html.substring(Ncpos01,Ncpos02);//위에 indexOf를 이용하여 범위를 압축시킵니다
TextView test = (TextView)findViewById(R.id.NoticeContent_title);
String tmp2 = "";//이미지링크를 받기위한임시값
BufferedReader reader1 = new BufferedReader(new StringReader(tmp));
String StrLine2 = "";//압축시킨 tmp값을 한줄씩 검사하여 이미지링크와 동일한값을 비교하여 찾기위한 변수값
while((StrLine2 = reader1.readLine()) != null)
{
if(StrLine2.contains("http")){
StrLine2 = StrLine2.substring(StrLine2.indexOf("http"),StrLine2.indexOf("/p"));
tmp2 += StrLine2 + "\n";//이미지링크가 두개이상잇을시 자르기 위해 개행값을 넣어준다
}
}
reader1.close();
tmp2 = tmp2.replace("\" /><","");//이미지링크값빼고 지우기위해 정리하는작업
String[] Content;
Content = tmp2.split("\n");// 이미지링크값 완료
//**********문제 ㅠㅠㅠ**************************
WebView img1 = (WebView)findViewById(R.id.NCweb01);
WebView img2 = (WebView)findViewById(R.id.NCweb02);
img1.setWebViewClient(new WebViewClient());
img1.getSettings().setJavaScriptEnabled(true);
test.setText(Content[0]);//이미지링크값이 잘 됫는지 확인하기위한값
img1.loadUrl(Content[0]);
//if(Content[1]!=null)img2.loadUrl(Content[1]);
NcProgress.dismiss();
}
catch(StringIndexOutOfBoundsException e){
Toast.makeText(getApplicationContext(), e.getMessage(), Toast.LENGTH_LONG).show();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
};