第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

AsyncTask 中的 DialogFragment 未關(guān)閉

AsyncTask 中的 DialogFragment 未關(guān)閉

明月笑刀無(wú)情 2023-07-19 14:54:00
我有辦法每 15 秒檢查一次互聯(lián)網(wǎng)連接。如果沒(méi)有互聯(lián)網(wǎng)連接,該方法將調(diào)用dialogfragment。到目前為止,它運(yùn)行得很好。建立互聯(lián)網(wǎng)連接后,我無(wú)法關(guān)閉dialogFragment。Logcat 沒(méi)有給出錯(cuò)誤。“dialogfragment dissmis”不起作用,dialogfragment 仍保留在屏幕上。首先,我斷開(kāi)與互聯(lián)網(wǎng)的連接并調(diào)用dialogFragment。隨后互聯(lián)網(wǎng)連接正在運(yùn)行并且“設(shè)備已連接到互聯(lián)網(wǎng)”。我看到文字了。但對(duì)話框片段并沒(méi)有消失。檢查InternetAsyncTask.classpublic class CheckInternetAsyncTask extends AsyncTask<Void, Integer, Boolean> {    Activity activity;    private Context context;    public CheckInternetAsyncTask(Activity activity) {        this.context = activity.getApplicationContext();        this.activity = activity;    }    @Override    protected Boolean doInBackground(Void... params) {        ConnectivityManager cm =                (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);        assert cm != null;        NetworkInfo activeNetwork = cm.getActiveNetworkInfo();        boolean isConnected = activeNetwork != null &&                activeNetwork.isConnected();        if (isConnected) {            try {                InetAddress ipAddr = InetAddress.getByName("google.com");                //You can replace it with your name                return !ipAddr.equals("");            } catch (Exception e) {                Log.e("TAG", "Error checking internet connection"+ e.getMessage());                return false;            }        } else {            //Log.d("TAG", "No network available!");            return false;        }    }
查看完整描述

2 回答

?
慕尼黑5688855

TA貢獻(xiàn)1848條經(jīng)驗(yàn) 獲得超2個(gè)贊

好的,我會(huì)在這里詳細(xì)解釋。

15 秒前您使用下面的行創(chuàng)建了一個(gè)對(duì)話框,我們稱之為object1

EthernetControlFragment.newInstance()

然后 15 秒后,您再次object2使用上面的行創(chuàng)建一個(gè)新對(duì)話框,當(dāng)您關(guān)閉它時(shí),您也關(guān)閉了這個(gè)新對(duì)話框object2。不幸的是,您沒(méi)有保留舊對(duì)話框的參考,dialog1這是真正的問(wèn)題。

解決方案是僅創(chuàng)建一個(gè)對(duì)象,因此創(chuàng)建類的全局引用EthernetControlFragment并僅在其為空時(shí)才對(duì)其進(jìn)行初始化。這樣你就只有一個(gè)對(duì)話框。


查看完整回答
反對(duì) 回復(fù) 2023-07-19
?
滄海一幻覺(jué)

TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超5個(gè)贊

我解決了我的問(wèn)題。調(diào)用片段如下:


    Fragment prev = ((FragmentActivity) activity).getSupportFragmentManager().findFragmentByTag("ethernet");

    if (prev == null) {

        ethernetControlFragment.show(((FragmentActivity) activity).getSupportFragmentManager(), "ethernet");

        ethernetControlFragment.setCancelable(false);

    }

并像這樣解雇:


Fragment prev = ((FragmentActivity) activity).getSupportFragmentManager().findFragmentByTag("ethernet");

            if (prev != null) {

                EthernetControlFragment df = (EthernetControlFragment) prev;

                df.dismiss();

            }

我認(rèn)為這些方法是調(diào)用和消除片段最可靠的方法。


查看完整回答
反對(duì) 回復(fù) 2023-07-19
  • 2 回答
  • 0 關(guān)注
  • 164 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)