簡體   English   中英

Android,ProgressBar setVisibility,同時在OnClickListener中加載數組

[英]Android , ProgressBar setVisibility while loading array inside OnClickListener

我試圖在單擊按鈕后加載數組時查看Spinner風格的ProgressBar樣式,問題是:當OnClickListener運行時,所有GUI都凍結並且setVisibility命令在內存加載完成之前不起作用。

我試圖使用runOnUiThread或使gui無效,但沒有任何作用|:

請幫忙 ?

    button.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {

            spinner.setVisibility(View.VISIBLE);  // <-- the spinner progressBar

            loadPhoneMembers();  // <-- memory loading progress 

            Intent intent = new Intent();
            intent.setClass(CreateFrom.this,CreateSendListFromPhoneContacts.class);      
            startActivity(intent);


        }
    });

您應該將loadPhoneMembers()方法移至新線程,因為這是一個耗時的過程,它阻塞了UI線程。 例如,您可以創建一個擴展AsyncTask的類,並將此代碼移動到doInBackground()方法中。 這是文檔: http : //developer.android.com/reference/android/os/AsyncTask.html

請注意,您無法從后台線程更改用戶界面

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM