最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

淺談android Fragment橫豎屏翻轉(zhuǎn)對(duì)重新加載的要求

 更新時(shí)間:2018年01月18日 11:12:46   作者:晴天5273  
下面小編就為大家分享一篇淺談android Fragment橫豎屏翻轉(zhuǎn)對(duì)重新加載的要求,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

有時(shí)候,我們?cè)谕粋€(gè)activity里面有很多fragment,在橫豎屏的時(shí)候,有些fragment要求重新加載數(shù)據(jù),有些不需要,如何簡(jiǎn)單控制這些需求,本人分享一點(diǎn)小經(jīng)驗(yàn),歡迎大家指正里面的錯(cuò)誤。

大家都知道橫豎屏翻轉(zhuǎn)的時(shí)候,activity會(huì)重啟,fragment也會(huì)重新加載,如果現(xiàn)在要求在橫豎屏翻轉(zhuǎn)的時(shí)候,同一個(gè)activity中,一個(gè)fragment要重新加載,一個(gè)不要重新加載,那該怎么辦呢?

如果在activity里面繼承了onConfigurationChanged這個(gè)方法之后,這個(gè)activity和里面的fragment是不會(huì)重新加載的,也就是說顯示的數(shù)據(jù)和UI不會(huì)改變,只是將豎屏的界面顯示成橫屏。為了控制哪個(gè)fragment不重啟哪個(gè)fragment要重啟。我們只要在onConfigurationChanged方法里面針對(duì)不同的fragment做不同的處理就好了。

<span style="white-space:pre;"> </span>@Override 
 public void onConfigurationChanged(Configuration newConfig) { 
  // TODO Auto-generated method stub 
  super.onConfigurationChanged(newConfig); 
  FragmentManager fragmentManager = getFragmentManager(); 
  Fragment oldFragment = null; 
  if ((oldFragment = fragmentManager 
    .findFragmentByTag("Fragment_One")) != null) { 
   Fragment newFragment = new FragmentOne(); 
   FragmentTransaction trans = fragmentManager.beginTransaction(); 
<span style="white-space:pre;">   </span>trans.remove(oldFragment); 
<span style="white-space:pre;">   </span>if (newFragment != null) { 
<span style="white-space:pre;">    </span>trans.add(R.id.fragments_container, newFragment, "Fragment_One"); 
<span style="white-space:pre;">   </span>} 
<span style="white-space:pre;">   </span>trans.commit(); 
  } 
 } 

假如我們現(xiàn)在有FragmentOne和FragmentTwo,其中FragmentOne要求在橫豎屏的時(shí)候activity不重啟,但是FragmentOne要重啟。那么只要在onConfigurationChanged里面判斷當(dāng)前顯示的如果是FragmentOne就remove掉舊的FragmentOne對(duì)象,new一個(gè)新的FragmentOne對(duì)象重新顯示到當(dāng)前activity。這樣fragment的數(shù)據(jù)和UI就可以重新加載和改變了。

這樣當(dāng)橫豎屏翻轉(zhuǎn)的時(shí)候,我們不想重啟activity,但是不同的fragment,有不同的界面或者需求,我們可以通過上面的方法隨意控制fragment要不要重新加載了。

以上這篇淺談android Fragment橫豎屏翻轉(zhuǎn)對(duì)重新加載的要求就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

耿马| 宁阳县| 仙居县| 德清县| 西丰县| 米林县| 云浮市| 肇庆市| 开平市| 和顺县| 维西| 乐山市| 田东县| 宁都县| 公安县| 盐城市| 青神县| 普陀区| 宕昌县| 稻城县| 上栗县| 科技| 荔浦县| 柯坪县| 新晃| 甘孜县| 馆陶县| 龙海市| 房山区| 洞口县| 渝中区| 武川县| 闸北区| 武义县| 甘谷县| 吴江市| 阜南县| 岑溪市| 邵东县| 营山县| 乐陵市|