กำลังแสดงแถบความคืบหน้าที่กำลังดำเนินอยู่ขณะบีบอัด Android

ฉันสร้างแอปใน Android ที่ช่วยให้ผู้ใช้สามารถบีบอัด/ขยายไฟล์ได้ ฉันต้องแสดง ProgressDialog เพื่อแสดงความคืบหน้าขณะบีบอัด/ขยายขนาดไฟล์ ฉันรู้วิธีการทำ ProgressDialog แต่ฉันไม่รู้ว่าฉันจะแสดงความคืบหน้าในปัจจุบันได้อย่างไร หรือฉันจะใส่อะไรไว้ใน publishProgress(code here) ปัญหาของฉันคล้ายกับปัญหานี้:

ดาวน์โหลดไฟล์ด้วย Android และแสดง ความคืบหน้าใน ProgressDialog

แต่ลิงค์นี้หมายถึงการดาวน์โหลดไฟล์ แต่สิ่งที่ฉันต้องการคือการบีบอัด/ขยายขนาดไฟล์ ขอบคุณ!


person John    schedule 28.06.2012    source แหล่งที่มา
comment
คุณสามารถเริ่มแสดงกล่องโต้ตอบของคุณใน PreExecution ของงาน Async ด้วย ProgressDialog.show() และใน doInBackground คุณสามารถบีบอัดและปิดกล่องโต้ตอบของคุณใน PostExecution   -  person rajpara    schedule 28.06.2012
comment
@AndroidCoader ฉันคิดว่าเขากำลังถามเกี่ยวกับวิธีใช้ ProgressBar สไตล์บาร์และโดยเฉพาะวิธีการกำหนดเปอร์เซ็นต์ของการบีบอัด / คลายการบีบอัดเพื่อให้สามารถตั้งค่านั้นให้เป็นแถบความคืบหน้าได้   -  person FoamyGuy    schedule 28.06.2012
comment
ขอบคุณทิม ขออภัย ฉันไม่สามารถโพสต์รหัสของฉันที่นี่ได้ มันเป็นความลับ ใครสามารถช่วยฉันได้บ้าง?   -  person John    schedule 28.06.2012
comment
คุณได้รับวิธีแก้ปัญหาสำหรับสิ่งนี้หรือไม่?   -  person King of Masses    schedule 05.09.2017


คำตอบ (1)


ใช้คลาส AsyncTask ที่กำหนดเอง หรือที่รู้จักว่า private class MySync extends AsyncTask {

  1. onPreExecute() ตั้งค่า ProgressDialog ตั้งค่าสูงสุดของคุณ setMax()

  2. doInBackGround(...) , บีบอัด/ขยายขนาด, ตั้งค่าความคืบหน้าปัจจุบัน setProgress()

  3. onPostExecute() สิ้นสุด ProgressDialog (.dismiss())

ฉันจะต้องดูรหัสของคุณเพื่อกำหนดวิธีวัดความก้าวหน้าของคุณ

person Jack Satriano    schedule 28.06.2012