2017-07-24 49 views
1

我正在使用WebView應用程序。我有一個片段(「NoInternet」),顯示一條消息:「沒有互聯網」,當我拉下來刷新,它重新加載主要活動主要活動有一個代碼來檢查互聯網連接,如果沒有互聯網連接,它會加載片段「NoInternet.java」。如果有互聯網,它會用WebView加載另一個片段。因此,在「NoIternet」片段中,我有一個SwypeRefreshLayout,完成了我的MainActivity,並重新加載。但它有一個動畫,我不想要這個動畫。我嘗試了一些代碼,如startActivity(new Intent(getContext(), MainActivity.class).addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION));,但沒有工作。任何人都可以幫助我?主要活動重新加載沒有動畫

NoInternet片段

SwipeRefreshLayout mySwipeRefreshLayout; 

public static NoInternet newInstance() { 
    NoInternet fragment = new NoInternet(); 
    return fragment; 
} 
@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
    View rootView = inflater.inflate(R.layout.nointernet, container, false); 
    mySwipeRefreshLayout = (SwipeRefreshLayout) rootView.findViewById(R.id.swiperefreshnointernet); 


    mySwipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { 
     @Override 
     public void onRefresh() { 
      getActivity().finish(); 
      Intent intent = new Intent(getActivity(), MainActivity.class); 
      startActivity(intent); 
      mySwipeRefreshLayout.setRefreshing(false); 
     } 
    }); 

    return rootView; 
} 

回答

0

我認爲它更好的,你只需更新從活動內容,然後完成它。但是,如果你真的需要做到這一點你可以從這個線程嘗試斯特凡馬西斯的方法:Refresh activity without re-opening it?

finish(); 
overridePendingTransition(0, 0); 
startActivity(getIntent()); 
overridePendingTransition(0, 0); 
+0

我得到錯誤,當我在我的onRefresh把這個代碼。錯誤出現在「overridePendingTransition」和「getIntent」 –

相關問題