如何在进度条中使用gif图像

时间:2016-11-17 13:06:50

标签: android progress-bar

我已尝试过所有代码,但我找不到解决方案如何在我的progessbar中使用此(GIF)图像

XML文件

<ProgressBar
    android:id="@+id/progressBar"
    style="@style/GenericProgressIndicator"
    android:layout_width="fill_parent"
    android:layout_height="200px"
    android:layout_centerInParent="true"
    android:visibility="visible"
    android:layout_centerHorizontal="true"
    android:layout_centerVertical="true"
    android:indeterminateDrawable="@drawable/animation" >
</ProgressBar>

JAVA文件

ProgressBar  bar=(ProgressBar)findViewById(R.id.progressBar);

想要在进度条中使用此图片 Want to use this image in progress bar

3 个答案:

答案 0 :(得分:1)

除非您想使用ProgressBar提供的特殊功能(看起来不像),否则您不需要使用ProgressBar来显示GIF。

使用简单的ImageView和一些支持GIF的图像库就足够了(例如Glide)。

答案 1 :(得分:0)

这是一个技巧,而不是一个完整的解决方案 我将gif加载为具有透明背景的警告对话框中的图像 并在流程开始时显示此警报对话框,并在结束时将其关闭。

但是也看看这个: Custom circular ProgressBar with image in center

答案 2 :(得分:0)

#import time module
import time

#import the appropriate multiprocessing functions
from multiprocessing import Pool

#define your functions
#whatever your slow function is
def slowFunction(x):
    return someFunction(x)

#printingFunction
def printingFunction(new,current,timeDelay):
    while new == current:
        print current
        time.sleep(timeDelay)


#set the initial value that will be printed.
#Depending on your function this may take some time. 
CurrentValue = slowFunction(someTemporallyDynamicVairable)

#establish your pool
pool = Pool()

while True: #endless loop

    #an asynchronous function, this will continue
    # to run in the background while your printing operates.
    NewValue = pool.apply_async(slowFunction(someTemporallyDynamicVairable))

    pool.apply(printingFunction(NewValue,CurrentValue,1))

    CurrentValue = NewValue

#close your pool
pool.close()