스크롤 목록 소유자와 Listner가있는 사용자 정의 webview를 만들었습니다. HTML 코드를로드하고 있는데, 이는 img
태그를 생성하는 자바 스크립트를 사용했으며, 루프의 경우 을 사용합니다.<img> 태그의 위치를 얻는 방법 webview의 ontouchListner에있는
String htnlString = "<!DOCTYPE html><html><body style = \"text-align:center\"><script type=\"text/javascript\">for(a=1;a<=10;a++)document.write('<img style=\"border-style:dotted;border-width:10px;border-color:black;\"src=\"http://shiaislamicbooks.com/books_snaps/EN183/'+a+'.jpg\" alt=\"Page Not Found\"/>');</script></body></html>";
wv.loadDataWithBaseURL(null, htnlString, "text/html", "UTF-8", null);
은 지금은 웹보기의 img
태그 onTouchListner의 위치를 싶어. <img>
태그의 위치를 반환하는 메서드가 webview에 있습니까?
전체 코드를 사전에
import android.content.Context;
import android.util.AttributeSet;
import android.util.Log;
import android.view.MotionEvent;
import android.webkit.WebView;
public class scorllableWebview extends WebView {
private OnScrollChangedCallback mOnScrollChangedCallback;
public scorllableWebview(final Context context) {
super(context);
}
public scorllableWebview(final Context context, final AttributeSet attrs) {
super(context, attrs);
}
public scorllableWebview(final Context context, final AttributeSet attrs,
final int defStyle) {
super(context, attrs, defStyle);
}
@Override
protected void onScrollChanged(final int l, final int t, final int oldl,
final int oldt) {
super.onScrollChanged(l, t, oldl, oldt);
if (mOnScrollChangedCallback != null)
mOnScrollChangedCallback.onScroll(l, t);
}
public OnScrollChangedCallback getOnScrollChangedCallback() {
return mOnScrollChangedCallback;
}
public void setOnScrollChangedCallback(
final OnScrollChangedCallback onScrollChangedCallback) {
mOnScrollChangedCallback = onScrollChangedCallback;
}
/**
* Impliment in the activity/fragment/view that you want to listen to the
* webview
*/
public static interface OnScrollChangedCallback {
public void onScroll(int l, int t);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
Log.d("onTouchEvent", event.getAction() + "");
// I want to get the position of <img> tag here.
// what is the method which return the <img> tag position
return super.onTouchEvent(event);
}
}
감사합니다.
감사합니다. 하지만 샘플 코드 plz을 보내 주시겠습니까 –
나는 이미 링크를 넣었습니다. 이후 나는 자바 스크립트 전문가가 아니에요, 내가 실수를 할 수도 있습니다. 게다가 좌표의 정의가 무엇 인지도 적지 않았습니다. 화면과 비교하거나, 웹뷰에서 가져온 것입니까? –