gpt4 book ai didi

android - 在 AsyncTask 中填充 ViewFlipper

转载 作者:行者123 更新时间:2023-11-30 04:05:51 27 4
gpt4 key购买 nike

我正在尝试使用 AsyncTask 将图像加载到我的 FlipView 中,但我不确定如何继续。我需要使用 AsyncTask,因为应用程序强制关闭,因为我有 20 张图像要从可绘制对象加载。

private class asyncImage extends AsyncTask<Void, Void, Void>{
int i;
@Override
protected Void doInBackground(Void... params) {
for (i=0;i<imageID.length;i++){
image = new ImageView(getBaseContext());
image.setId(i);
image.setImageResource(imageID[i]);
image.setBackgroundDrawable(getResources().getDrawable(R.drawable.border));
image.setScaleType(ImageView.ScaleType.FIT_XY);
FlipV.addView(image);
}
return null;
}

protected void onPostExecute(Void result){

image.setBackgroundDrawable(getResources().getDrawable(R.drawable.border));
image.setScaleType(ImageView.ScaleType.FIT_XY);
for(int x=0;x<imageID.length;x++){
FlipV.addView(???); //How to add images into FlipView?
}
}

}

我无法将图像添加到 FlipView。有帮助吗?

最佳答案

正如我在评论中提到的,我已经通过使用 ImageView 数组而不是在 doInBackground 中加载图像并在 postExecute 的 viewflipper 中添加 ImageView 来解决我的问题。我还在我的应用程序中添加了一个进度对话框来显示加载时间而不是空白屏幕。感谢所有回复的人。

private class asyncImage extends AsyncTask<Void, Void, Void>{
int i;
@Override
protected Void doInBackground(Void... params) {
for (i=0;i<imageID.length;i++){
image[i] = new ImageView(getBaseContext());
image[i].setImageResource(imageID[i]);
image[i].setBackgroundDrawable(getResources().getDrawable(R.drawable.border));
image[i].setScaleType(ImageView.ScaleType.FIT_XY);
}
return null;
}

protected void onPostExecute(Void result){
for (int x=0;x<imageID.length;x++){
FlipV.addView(image[x]);
}
count = 1;
progDialog.dismiss();
txItem.setText(Integer.toString(count) + "/" + (imageID.length));
}
}

关于android - 在 AsyncTask 中填充 ViewFlipper,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11686744/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com