

AndroidでWebView表示の前に`uri`の値を条件によって変更させたいです。

[code]

       override fun onCreate(savedInstanceState: Bundle?) {
    
            super<DefaultActivity>.onCreate(savedInstanceState)
            setContentView(R.layout.activity_webview)
    
            setupUri()
    
            if (savedInstanceState == null) {
    
                val newFragment = WebViewFragment.newFragment(uri!!)
    
                getFragmentManager()
                        .beginTransaction()
                        .add(R.id.web_view_container, newFragment)
                        .commit()
    
            }
    
            getSupportActionBar().hide()
    
        }
    
    }
    
[/code]

参考にしたiOSの場合はこうなってます。

[code]

    - (void)viewDidLoad
    {
        [super viewDidLoad];
        
        [self registerEventHandlers:[self prefferedEventhandlers]];
    }
    
[/code]

↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓呼び出し↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

[code]

     override func prefferedEventhandlers() -> [AnyObject]! {
            
            return [
                LSGAdEventHandler(webViewController: self),
                LSGLoginPageEventHandler(webViewController: self),
                LSGOtherEventHandler(webViewController: self)
            ]
            
        }
    
[/code]

これはviewDidLoadで画面描画する前にEventHandlerを走らせる処理だと思うのですが、onCreateが該当するでしょうか。


CC BY-SA 4.0
2015-09-02T10:05:03.340
15143
2021-03-07T05:28:24.977
2021-03-07T05:28:24.977
3060
10715
question
java android kotlin
onCreate前にEventHandlerで値を変化させるには？


urlを読み込む前にフックするのが目的で、oncreateが走らないとwebviewが生成されず、質問自体が間違っていました。

webviewが持ってるメソッドのonPageStartedでEventHandlerを走らせる方法をとります。

* * *

_この投稿は[@hai123
さんのコメント](https://ja.stackoverflow.com/questions/15143/oncreate%e5%89%8d%e3%81%abeventhandler%e3%81%a7%e5%80%a4%e3%82%92%e5%a4%89%e5%8c%96%e3%81%95%e3%81%9b%e3%82%8b%e3%81%ab%e3%81%af#comment13758_15143)
の内容を元に コミュニティwiki として投稿しました。_


CC BY-SA 4.0
2021-03-07T05:28:01.437
74472
2021-03-07T05:28:01.437
3060
15143
answer