0
この問題は私の脳を爆発させました。私はそれぞれWebViewを含む2つのフラグメントを持っています。これらの2つのフラグメントは、ViewPagerのアダプタであるViewPagerAdapterに配置されます。このViewPagerはTabLayoutで設定されます。コード内:MainActivityから外部ビューにアクセスする方法
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
WebViewFragment webViewFragment1 = WebViewFragment.newInstance(1);
WebViewFragment webViewFragment2 = WebViewFragment.newInstance(2);
WebViewFragment[] fragments = new WebViewFragment[]
{
webViewFragment1,
webViewFragment2
};
String[] fragmentTitles = new String[]
{
"WebView1",
"WebView2"
};
ViewPager viewPager = (ViewPager)findViewById(R.id.viewPager);
ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager(), fragments, fragmentTitles);
viewPager.setAdapter(adapter);
TabLayout tabLayout = (TabLayout)findViewById(R.id.tabLayout);
tabLayout.setupWithViewPager(viewPager);
}
この構成では、WhatsApp(ジェスチャー制御)のような断片を見ることができます。
しかし、MainActivtyのWebViewFragmentsでWebViewのコンテンツを制御したいとします。しかし、私は外部からWebViewにアクセスする方法はわかりません。私は
findViewById(R.id.webView1)
方法の助けを借りてアクセスするためにそれらを試してみてください、私は応答としてnullを取得する場合
webView1 //and
webView2
:2 webviewsはIDを持っています。
ここで、MainActivityからこれらのビューにどのようにアクセスできますか?
問題はonCreateループが速すぎるため、フラグメントにWebViewを拡張する時間がないことです。 – alexanders916