Develop
2016.11.15 10:23
[android] Calling activity function from separate class
조회 수 1161 댓글 0
Javascript를 통해 Activity의 함수를 호출할 때,
예제는 finish();를 호출해서 현재 창을 닫는다.
Using the linked page as an example, you should be able to do something like this:
WebAppInterface class
public class WebAppInterface { Activity mActivity; /** Instantiate the interface and set the activity */ WebAppInterface(Activity activity) { mActivity = activity; } /** Finish activity from the web page */ @JavascriptInterface public void finishActivity() { mActivity.finish(); } }
Now, in your activity you add the JS interface like this:
WebViewActivity
WebView webView = (WebView) findViewById(R.id.webview); webView.addJavascriptInterface(new WebAppInterface(this), "Android");
And in your webpage, you can finish the activity by clicking a button, like this:
HTML Contents
<input type="button" value="Finish the activity now" onClick="finishActivity()" /> <script type="text/javascript"> function finishActivity() { Android.finishActivity(); } </script>
[출처] http://stackoverflow.com/questions/20639476/calling-activity-function-from-separate-class
TAG •
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
277 | Develop | 프로그래밍에서 foo, bar 함수의 유래 | hooni | 2013.06.25 | 21264 |
276 | Develop | [ios] PHP로 APNS 프로바이더~ | hooni | 2013.06.27 | 16847 |
275 | Develop | [ios] APNS 클라이언트 구현 (pdf) | hooni | 2013.06.27 | 15692 |
274 | Develop | [ios] APNS 샘플 코드.. | hooni | 2013.06.27 | 0 |
273 | Develop | [android] GCM 사용하기 1 (GCM 서비스 신청하기) | hooni | 2013.07.06 | 51356 |
272 | Develop | GCM 사용하기 2 (단말에 GCM 구현하기) | hooni | 2013.07.06 | 23248 |
271 | Develop | GCM 사용하기 3 (JSP로 GCM 푸시 서버 만들기) 4 | hooni | 2013.07.06 | 25316 |
270 | Develop | git 브런치 배우기 (링크) | hooni | 2013.07.09 | 20571 |
269 | Develop | [ios] App States | hooni | 2013.07.22 | 13195 |
268 | Develop | [ios] Background 에서 네트워크 사용 | hooni | 2013.07.22 | 11510 |
267 | Develop | [ios] 소소한 팁 (Rect,Point,Path,URL 등) | hooni | 2013.08.08 | 29457 |
266 | Develop | [ios] libxml/tree.h file not found | hooni | 2013.08.08 | 18709 |