我正在使用WebView应用程序。我有一个片段(“NoInternet”)显示一条消息:“没有互联网”,当我下拉刷新时,它重新加载主要活动主要活动有一个代码来检查互联网连接,如果没有互联网连接,它将加载片段“NoInternet.java”。如果有互联网,它将使用WebView加载另一个片段。因此,在“NoIternet”片段中,我有一个SwypeRefreshLayout,它完成了我的MainActivity,并再次加载它。但它有一个动画,我不想要这个动画。我尝试了一些像startActivity(new Intent(getContext(), MainActivity.class).addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION));
这样的代码但是没有工作。有人可以帮帮我吗?
NoInternet Fragment
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 :(得分:0)
我认为您只需更新活动中的内容然后完成它就会更好。但如果你真的需要这样做,你可以尝试从这个线程的Stephane Mathis方法:Refresh activity without re-opening it?
finish();
overridePendingTransition( 0, 0);
startActivity(getIntent());
overridePendingTransition( 0, 0);