在我的應用程序中,我正在一個線程中執行網絡操作。在網絡操作的結果中,我使用runOnUiThread()方法顯示吐司並替換片段。但片段被替換後,應用程序被掛起。應用程序掛起時,在runOnUiThread中做碎片事務
這裏是我的代碼
getBaseActivity().runOnUiThread(() -> {
hideProgressDialog();
showToastAlertDialog(getString(R.string.mystring));
MyFragment fragment = new MyFragment();
getBaseActivity().replaceFragment(getActivity(), fragment, false, R.id.baseFragment);
BaseActivity.java
public void replaceFragment(FragmentActivity activity, Fragment fragment, boolean addToBackStack, int baseFragment) {
try {
FragmentTransaction ft = activity.getSupportFragmentManager().beginTransaction();
ft.replace(baseFragment, fragment);
if (addToBackStack) {
ft.addToBackStack(null);
}
ft.commit();
} catch (Exception exception) {
CXLog.e(TAG, "Exception: " + exception.getLocalizedMessage(), exception);
}
}
你可以使用的AsyncTask爲您的網絡操作。 –
它告訴你什麼在LogCat?該應用程序掛了多長時間? – Sufian
這個問題在任何情況下都是錯誤的嗎?負面印記的原因是什麼? – Madhan