asynctask-Android工程导入Eclipse运行问题

问题描述

Android工程导入Eclipse运行问题

当我将Android studio中的文件导入到Eclipse中时,原本在Android studio中运行在真机上会加载网络图片,可是导入到Eclipse中却载入不了网络图片,而且进度条的样式也改变了。
MainAcitivity.java文件如下:
package com.example.imagedemo;

import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Color;
import android.os.AsyncTask;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.ProgressBar;

import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;

public class MainActivity extends Activity implements View.OnClickListener {
private static final String[] params={
"http://p0.so.qhimg.com/bdr/_240_/t013971ecacef25bf25.jpg",
"http://p4.so.qhimg.com/t018349127914f495ce.jpg"
};
private Button btnFirst;
private ProgressBar progress;
private Bitmap bitmap=null;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnFirst = (Button) findViewById(R.id.btnFirst);
progress = (ProgressBar) findViewById(R.id.progress);
btnFirst.setOnClickListener(this);

}

@Override
public void onClick(View v) {
    progress.setVisibility(View.VISIBLE);
    progress.setMax(100);
    MyASyncTask task = new MyASyncTask();
    task.execute(params);

}

public class MyASyncTask extends AsyncTask<String, Integer, Bitmap> {

    protected Bitmap doInBackground(String... params) {
        int read;
        byte[] chars = new byte[1024];
        Bitmap bitmap=null;
        InputStream inputStream = null;
        try {

                URL url = new URL(params[0]);
                HttpURLConnection con=(HttpURLConnection) url.openConnection();
                con.setDoInput(true);//如果不设置的话,默认是true,它的意思是如果需要读取url上网络的数据时,必须要设置成true
                con.connect();
                inputStream=con.getInputStream();//先要获取目标URL的地址的输入流
                bitmap= BitmapFactory.decodeStream(inputStream);//通过BitmapFactory的decodeStream方法解析输入流
                while((read=inputStream.read(chars))!=-1)
                {
                    read+=chars.length;
                    publishProgress(read);
                    try {
                        Thread.sleep(1300);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                }
                inputStream.close();
        }
        catch (MalformedURLException e) {
            e.printStackTrace();
        }catch (IOException e) {
            e.printStackTrace();
        }
        return bitmap;
    }
    @Override
    protected void onProgressUpdate(Integer... values) {

   //当publichProcess被调用以后,UI线程将调用这个有方法在界面上展示任务的情况,比如一个额进度条。这里是更新进度条

        int value=values[0];
        progress.setVisibility(View.VISIBLE);
        progress.setBackgroundColor(Color.YELLOW);
        progress.setProgress(value);
        super.onProgressUpdate(values);
    }

    /*在 onPostExecute(Result) 中是请求获得结果后更新UI部分。你会看到他的参数就是我们类中的类型参数。代码如下*/
    protected void onPostExecute(Bitmap Result){
        ImageView imgView = (ImageView)findViewById(R.id.image);;
        imgView.setImageBitmap(Result);
        progress.setVisibility(View.VISIBLE);  /*不显示进度条,当图片加载进来后,立马就占了进度条的位置*/
        btnFirst.setText("图片下载完毕");

    }

}

}
布局文件如下:
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">

<Button
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/btnFirst"
    android:text="开始下载"/>
<ProgressBar
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/progress"
    android:visibility="invisible"
    android:max="100"
    style="?android:attr/progressBarStyleHorizontal"/>
<ImageView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/image"
    />

解决方案

进度条的样式改变是因为主题的原因。
图片的问题可能是网络权限的问题。、

解决方案二:

eclipse工程导入android studio遇到的问题
eclipse导入工程中文乱码问题
eclipse导入工程中文乱码问题

解决方案三:

clean一下工程试试看效果。

解决方案四:

进度条的样式改变 很有可能是 版本上的问题 可以试着切换下版本 eclipse中 运行 不能加载图片 看是否是上网权限 或者 只是因为没有网络

解决方案五:

你确定你导入的是Android Project而不是Gradle Project?

解决方案六:

看看流读取有没有数据,如果没有可能是权限问题或者网络问题
如果有数据而你的进度条又没有改变,那就要重新设置样式

解决方案七:

2121gjfhhjgfjfgxj

解决方案八:

2121gjfhhjgfjfgxj

时间: 2024-08-29 11:41:30

asynctask-Android工程导入Eclipse运行问题的相关文章

android studio导入eclipse工程

问题描述 android studio导入eclipse工程 我的eclipse工程有多个依赖包,是用android studio直接导入的,然后清单文件报错 alipay_lib:processDebugManifest求解 解决方案 这是阿里支付的库 参考:http://blog.csdn.net/hzqhbc/article/details/40080173

编码-android studio导入eclipse项目

问题描述 android studio导入eclipse项目 android studio导入eclipse项目后,出现了乱码,原先是GBK的,在studio中我也把编码改成了GBK 代码里的中文也不乱码了,可是问题来了: 重新编译后,还是提示乱码,下面是截图 解决方案 Android Studio 导入 Eclipse 的代码后,运行时中文显示乱码 Android Studio 1.2 编译出来在手机上运行时显示乱码 解决方案二: android studio 导入eclipse项目乱码处理

android studio导入eclipse项目错误

问题描述 android studio导入eclipse项目错误 在网上找到一个扫描二维码的项目的源码,用android studio打开,把sdk版本改为我电脑上的sdk版本,编译却出现这个错误 求解答.困扰两天了.

把myeclipse的工程导入eclipse,出现这种错误,是什么情况

问题描述 把myeclipse的工程导入eclipse,出现这种错误,是什么情况 解决方案 1.请首先确保你的eclipse是javaee版本的,或者已经安装看wtp插件 2.然后修改eclipse工程下的.project文件在 中加入 org.eclipse.wst.common.project.facet.core.nature org.eclipse.wst.common.modulecore.ModuleCoreNature org.eclipse.jem.workbench.JavaE

把工程导入eclipse后,在eclipse中没有html文件,回到原工程中html文件也消失了

问题描述 把工程导入eclipse后,在eclipse中没有html文件,回到原工程中html文件也消失了 把工程导入eclipse后,在eclipse中没有html文件,回到原工程中html文件也消失了,谢谢各位大神 解决方案 http://blog.csdn.net/hongchangfirst/article/details/7722703 解决方案二: 用myeclipse应该就可以了,另外也可以现在里面新建好一个web项目,然后把文件复制进去覆盖即可. 解决方案三: 原来的文件怎么会消

facebook android sdk 导入eclipse问题

问题描述 facebook android sdk 导入eclipse问题 最近公司要做facebook 登陆 在导入facebook android sdk 的时候 需要将引用的jdk改为1.7 当时当改为1.7的时候项目会出现: Description Resource Path Location Type Android requires compiler compliance level 5.0 or 6.0. Found '1.7' instead. Please use Androi

怎么将spring 作为一个工程导入eclipse?我想读下源码

问题描述 怎么将spring 作为一个工程导入eclipse?我想读下源码 问题补充:qinglangee 写道 解决方案 用maven导,在eclipse安装m2eclipse插件,然后import exsit maven project,就ok了.解决方案二:直接下载 spring 源码 然后导入!!解决方案三:你把java文件解压出来,然后复制粘贴到src目录下,它们都只是普通的java文件而已,这样一定没问题解决方案四:那新建一个java工程,直接把源码塞到src目录下不就行了解决方案五

SlidingMenu-master中的example怎样导入eclipse运行

原文:http://blog.csdn.net/tj_shenzhendaxue/article/details/8617329     相信能看这篇教程的码农门都已经知道了SlidingMenu能够实现的界面效果了,就是类似于人人网或者Facebook的那种双层滑动页面,网上也有很多这方面的呢例子,但是吗,没有一个能够完整地教会大家怎么将SlidingMenu-master中的example成功运行起来的教程,这里将会教大家一步步成功实现想要的那种效果: 1.登陆https://github.

android studio导入Eclipse项目出现的几个问题

想使用android studio但是感觉使用起来好难,但是当导入成功第一个项目以后就感觉还行,功能齐全,适配方便,但是还是要多多熟悉. 第一个问题 (1)导出eclipse项目以后不能直接导入,导入进去不能使用,查了资料,修改过以后导入了项目,但是还是不能使用                导出以后要修改下边这些(网上找到的,感谢分享啊) 首先需要更改的是 build.gradle 文件 AndroidStudio 1.0 ~ 1.0.2 使用的都是 Android Gradle plugin