Webviewを利用したAndroidアプリ開発をしており、Webview内のJavascriptからAndroidStudio側(java)のメソッドを呼び出しSnackbarを利用したいです。
公式で確認したところ、Toast通知の利用例が載っており、その通りに実装した所Toastの実装はできました。以下がそのプログラムです。
public class WebAppInterface {
Context mContext;
/** Instantiate the interface and set the context */ WebAppInterface(Context c) { mContext = c; } /** Show a toast from the web page */ @JavascriptInterface public void showToast(String toast) { Toast.makeText(mContext, toast, Toast.LENGTH_SHORT).show(); } }
このプログラムをWebview関係を記述しているMainActivityの
webView.addJavascriptInterface(new WebAppInterface(this), "Android");
で受け取り、Webview内のJavascript
<input type="button" value="Say hello" onClick="showAndroidToast('Hello Android!')" />
<script type="text/javascript"> function showAndroidToast(toast) { Android.showToast(toast); } </script>
でボタンを作成、showToastメソッドを呼び出しています。
これらのプログラムをSnackbarバージョンにしたいのですが上手くできません。
引数がContextではなくViewなのでそれに応じた変更、
webView.addJavascriptInterface(new WebAppInterface(this), "Android");
の(this)の部分の変更等が必要だとは考えてはいるのですが、実際にどのように変更すれば良いか分からず、また調べてもWebviewでSnackbarを動かす方法が見つからず、手詰まりになっています。
実装方法や分かりやすいサイト等、どなたかご教授お願いいたします。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/12/26 15:05
2021/12/26 15:27