WebView内で「info://open」というリンクがあったらInfoActivityを開くまでの流れ
WebView内のリンクがhttpなどではなかったらIntentする。
Info画面のボタンを押したらActivityを閉じる
上記の流れを実装します。
スポンサーリンク
onCreateのsetWebViewClientしているところを変更します。
MainActivity.java
InfoActivityを作成して、Manifestにactivityを追加。
<activity android:name=".InfoActivity"> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT"/> <data android:scheme="info" android:host="open" /> </intent-filter> </activity>
infoのレイアウトにボタンを用意して、onClickメソッドを用意
onClickメソッドにはInfoActivity.this.finish();
とActivityを閉じるだけの処理を書いてあげる。
WebView内のスキームは処理をちゃんと書かないとスキームが動いてくれないらしいので、Intentを書くことを忘れずに。
ブラウザからならManifestにdataを追加するだけでスキームしてくれます。