0

我目前正在从事其他人的项目,因为他们已经离开了公司。我只是在实习,Java不是我的强项。

基本上,该应用程序通过从提要接收信息并将该信息放置在相关位置来工作。

然而,客户要求在已同意的图像上放置图形。

这是为我完成的,因为我无法访问提要。

我想指出,带有图形的提要在 iPhone 应用程序上运行良好。

按下搜索按钮后,此消息会在我的日志 cat 中打印出来:java.io.FileNotFoundException: http://images.ultrait.me/ImageProcessor.aspx?imageURL=381/Sales/321470/53659_T_ADDRESSES_52050_TN.jpg&Text=LET AGREED

正如您通过单击链接所看到的那样,将出现图标。

当我单击选项卡搜索属性时,Feed 将开始加载,并且图像将出现在列表视图中。图像会出现,但上面没有让同意的图标,我相信这是因为它将提要中的图像之一作为缩略图,但我需要它来显示图形(我不确定这是否甚至是正确的)。

当我单击查看属性时,图像会消失。

我工作到最后期限,我没有人可以帮助我。请耐心等待我。

以下是我认为您可能需要查看的一些课程。

public class _06_Photos extends Activity implements ViewFactory{

    private static final int SWIPE_MIN_DISTANCE = 120;
    private static final int SWIPE_MAX_OFF_PATH = 250;
    private static final int SWIPE_THRESHOLD_VELOCITY = 200;


    //GUI  Components
    TextView tv_counter;
    //ImageView iv_activity;
    ImageSwitcher imageSwitcher;

    Button b_play;
    Button b_next;
    Button b_previous;

    FrameLayout topFrame, bottomFrame;


    //Images and Stuff
    String [] str_imageURLs;
    Bitmap [] bm_images;
    int picNum = 0;
    boolean play;
    boolean stop;
    Handler handler;

    Thread playThread;


    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.xl_06_photos);

        handler = new Handler();

        playThread = new Thread(Play);

        play = false;
        stop = false;
        playThread.start();

        str_imageURLs = new String[5];
        for(int i=0; i<5;++i)
            str_imageURLs[i] = "";

        bm_images = new Bitmap[5];

        InitView();

        Bundle extras = getIntent().getExtras();
        if (extras != null) {
            str_imageURLs[0] = extras.getString("img1");
            str_imageURLs[1] = extras.getString("img2");
            str_imageURLs[2] = extras.getString("img3");
            str_imageURLs[3] = extras.getString("img4");
            str_imageURLs[4] = extras.getString("img5");
        }

        for(int i=0; i<5; i++)
            System.out.println(str_imageURLs[i]);


        new Thread(new Runnable() {
            public void run() {
                for(int i=0; i<5; ++i)
                {
                    try{
                        bm_images[i] = FindPropertyActivity.DownloadImage(str_imageURLs[i]);
                    }
                    catch(Exception e){
                        System.out.println("Image" + i + " not downloaded - " + e);
                    }

                    try{
                    if(bm_images[i] == null)
                    {
                        System.out.println("Bitmap " + i + " is null");
                        bm_images[i] = BitmapFactory.decodeResource(getResources(), R.drawable.download_error);
                    }

                    if(picNum == i)
                        //iv_activity.setVisibility(View.INVISIBLE);
                        //Drawable d =new BitmapDrawable(bm_images[i]);
                        //imageSwitcher.setImageDrawable(d);
                        handler.post(SetPic);
                    }
                    catch(Exception e){
                        System.out.println("PicNum null/visiablity" + i + " not setCorrectly - " + e);
                    }
                }
                System.gc();
            }
          }).start();
    }

    private void InitView(){

        handler.post(SetPic);
        tv_counter = (TextView)findViewById(R.id.photo_tv_counter);
        imageSwitcher = (ImageSwitcher)findViewById(R.id.photo_imageSwitcher);
        imageSwitcher.setFactory(this);

        topFrame = (FrameLayout)findViewById(R.id.photo_topFrame);
        bottomFrame = (FrameLayout)findViewById(R.id.photo_bottomFrame);


        final GestureDetector gestureDetector = new GestureDetector(new MyGestureDetector());
        imageSwitcher.setOnTouchListener(new View.OnTouchListener() {

            public boolean onTouch(View v, MotionEvent event) {
                gestureDetector.onTouchEvent(event);
                    return true;
            }
        });

        b_play = (Button)findViewById(R.id.photo_b_play);
        if(play){   
            b_play.setBackgroundDrawable(getResources().getDrawable(R.drawable.button_pause));
            topFrame.setVisibility(View.INVISIBLE);
            bottomFrame.setVisibility(View.INVISIBLE);
        }
        else{
            b_play.setBackgroundDrawable(getResources().getDrawable(R.drawable.button_play)); 

        }
        b_play.setOnTouchListener(new View.OnTouchListener() {

            public boolean onTouch(View v, MotionEvent event) {
                if (event.getAction() == MotionEvent.ACTION_DOWN) {
                    Drawable background =  v.getBackground();
                    background.setColorFilter(0xFF7A7A7A, PorterDuff.Mode.MULTIPLY);
                    v.setBackgroundDrawable(background);
                } else if (event.getAction() == MotionEvent.ACTION_UP) {
                    Drawable background =  v.getBackground();
                    background.setColorFilter(null);
                    v.setBackgroundDrawable(background);

                    if(play){
                        play = false;
                        b_play.setBackgroundDrawable(getResources().getDrawable(R.drawable.button_play));
                    }

                    else{
                        play = true;
                        b_play.setBackgroundDrawable(getResources().getDrawable(R.drawable.button_pause));
                        topFrame.setVisibility(View.INVISIBLE);
                        bottomFrame.setVisibility(View.INVISIBLE);
                    }
                }
                return false;
            }
        });



        b_previous = (Button)findViewById(R.id.photo_b_previous);
        b_previous.setOnTouchListener(new View.OnTouchListener() {

            public boolean onTouch(View v, MotionEvent event) {
                if (event.getAction() == MotionEvent.ACTION_DOWN) {
                    Drawable background =  v.getBackground();
                    background.setColorFilter(0xFF7A7A7A, PorterDuff.Mode.MULTIPLY);
                    v.setBackgroundDrawable(background);
                } else if (event.getAction() == MotionEvent.ACTION_UP) {
                    Drawable background =  v.getBackground();
                    background.setColorFilter(null);
                    v.setBackgroundDrawable(background);

                    PreviousPic();
                }
                return false;
            }
        });

        b_next = (Button)findViewById(R.id.photo_b_next);
        b_next.setOnTouchListener(new View.OnTouchListener() {

            public boolean onTouch(View v, MotionEvent event) {
                if (event.getAction() == MotionEvent.ACTION_DOWN) {
                    Drawable background =  v.getBackground();
                    background.setColorFilter(0xFF7A7A7A, PorterDuff.Mode.MULTIPLY);
                    v.setBackgroundDrawable(background);
                } else if (event.getAction() == MotionEvent.ACTION_UP) {
                    Drawable background =  v.getBackground();
                    background.setColorFilter(null);
                    v.setBackgroundDrawable(background);

                    NextPic();
                }
                return false;
            }
        });
    }

    public void onDestroy(){
        super.onDestroy();
        stop = true;
    }

    private final Runnable SetPic = new Runnable() {
        public void run() {
            //iv_activity.setVisibility(View.INVISIBLE);
            Drawable d =new BitmapDrawable(bm_images[picNum]);
            imageSwitcher.setImageDrawable(d);
            System.out.println("Pic Set");

            tv_counter.setText("" + (picNum+1) + "/5");
        }
    };

    private final Runnable Play = new Runnable() {
        public void run() {
            while(!stop){
                try{

                    Thread.sleep(3000);
                    handler.post(new Runnable() {
                        public void run() {

                            if(play)
                                NextPic();
                        }
                    });
                }
                catch(Exception e){
                    System.out.println("Play Error - " + e);
                }
            }
        }
    };


    protected void NextPic(){

        try{
            picNum++;
            if(picNum > 4)
                picNum = 0;

            tv_counter.setText("" + (picNum+1) + "/5");

            imageSwitcher.setInAnimation(this, R.anim.slide_in_left ); // added
            imageSwitcher.setOutAnimation(this, R.anim.slide_out_left); // added
            Drawable d =new BitmapDrawable(bm_images[picNum]);
            imageSwitcher.setImageDrawable(d);
            System.out.println("Next Pic");
        }
        catch(Exception e){
            System.out.println("Next Fail " + e);
            imageSwitcher.setImageDrawable(null);
        }
    }

    protected void PreviousPic(){


            picNum--;
            if(picNum < 0)
                picNum = 4;

            tv_counter.setText("" + (picNum+1) + "/5");
        try{    
            imageSwitcher.setInAnimation(this, R.anim.slide_in_right ); // added
            imageSwitcher.setOutAnimation(this, R.anim.slide_out_right); // added
            Drawable d =new BitmapDrawable(bm_images[picNum]);
            imageSwitcher.setImageDrawable(d);
            System.out.println("Previous Pic");
        }
        catch(Exception e){
            System.out.println("Previous Fail " + e);
            //imageSwitcher.setImageResource(R.drawable.download_error);
            imageSwitcher.setImageDrawable(null);
        }

    }

    protected void ChangeBarVisibles(){
        if(topFrame.isShown()){
            topFrame.setVisibility(View.INVISIBLE);
            bottomFrame.setVisibility(View.INVISIBLE);
        }
        else{
            topFrame.setVisibility(View.VISIBLE);
            bottomFrame.setVisibility(View.VISIBLE);
        }
    }


    public View makeView() 
    {
        ImageView imageView = new ImageView(this);
        imageView.setBackgroundColor(0xFF000000);
        imageView.setScaleType(ImageView.ScaleType.FIT_CENTER);
        imageView.setLayoutParams(new 
                ImageSwitcher.LayoutParams(
                        LayoutParams.FILL_PARENT,
                        LayoutParams.FILL_PARENT));
        return imageView;
    }

    class MyGestureDetector extends SimpleOnGestureListener {
        @Override
        public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
            try {

                if (Math.abs(e1.getY() - e2.getY()) > SWIPE_MAX_OFF_PATH)
                    return false;
                // right to left swipe
                if(e1.getX() - e2.getX() > SWIPE_MIN_DISTANCE && Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {
                    //Toast.makeText(SelectFilterActivity.this, "Left Swipe", Toast.LENGTH_SHORT).show();
                    NextPic();
                    //return true;
                }  else if (e2.getX() - e1.getX() > SWIPE_MIN_DISTANCE && Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {
                    //Toast.makeText(SelectFilterActivity.this, "Right Swipe", Toast.LENGTH_SHORT).show();
                    PreviousPic();
                    //return true;
                }   
            } catch (Exception e) {
                // nothing
            }
            return true;
        }

       public boolean onSingleTapUp(MotionEvent e){
           if(e.getAction() == MotionEvent.ACTION_UP){
                ChangeBarVisibles();
           }
           return true;
        }
    }

    @Override
    public void onConfigurationChanged(Configuration newConfig) {
      super.onConfigurationChanged(newConfig);
      setContentView(R.layout.xl_06_photos);

      InitView();
    }

    @Override
    public void onStop(){
        super.onStop();
        System.gc();
    }
}

我的结果类:

public class _02_Results extends ListActivity {

    private SearchParser xmlParser;
    private URLQueryGenerator urlGen;

    //private ProgressDialog dialog;
    private Handler handler;
    private CellAdapter_SearchResults adapter;

    //private Thread thr_downloadImages;

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.xl_02_results);

        handler = new Handler();

        //thr_downloadImages = new Thread();

        xmlParser = new SearchParser();
        urlGen = new URLQueryGenerator(getParent());
        adapter =new CellAdapter_SearchResults(_02_Results.this, AppDelegate.properties);
        setListAdapter(adapter);

        if(AppDelegate.properties.size() < 1){
            //Reset Results page number to one. Because the results are starting afresh.
            AppDelegate.pageNum = 1;
            handler.post(ReloadCells);
            GetResults();
        }

        if(AppDelegate.results_ListView_State != null)
            getListView().onRestoreInstanceState(AppDelegate.results_ListView_State);

        //if(AppDelegate.pick > 0)
        //  setSelection(AppDelegate.pick);

    }

    public void onResume()
    {
        super.onResume();
        System.gc();
        new Thread(LoadImages).start();
    }


    @Override
    protected void onListItemClick(ListView l, View v, int position, long id) {

        //If the last is picked and it is a Get More (Blank/Empty) Cell Download More Properties.
        if(position >= AppDelegate.properties.size()-1 && AppDelegate.properties.get(position).str_ID.length() <= 0)
        {
            xmlParser = new SearchParser();
            LoadMoreResults();
        }

        //Else view Property in Array
        else{
            Intent myIntent = new Intent(getParent(), _03_Detailed.class);
            AppDelegate.pick = position;
            TabGroupActivity parentActivity = (TabGroupActivity)getParent();
            parentActivity.startChildActivity("Detailed_03", myIntent);

            //Save the listview state for later init
            AppDelegate.results_ListView_State = getListView().onSaveInstanceState();
        }
    }


    protected void GetResults(){

        //Show Progress Dialog
        //dialog = ProgressDialog.show(getParent(), "", getResources().getString(R.string.search_alert), true);
        Toast.makeText(getApplicationContext(), getResources().getString(R.string.search_alert), Toast.LENGTH_SHORT).show();
        Runnable getResults = new Runnable() {
            public void run() {
                try{
                    //Get XML page from URL generated as a String
                    String xml = XMLfunctions.getXML(urlGen.createSearchURL());

                    if(xml == null){
                        handler.post(DownloadFail_Dialog);
                        System.out.println("xml is null");
                        return;
                    }

                    //Add the parsed properties return from Parser
                    AppDelegate.properties.addAll(xmlParser.ParserXML(xml));// xmlParser.ParserXML(urlString);

                    //Get the number of results for search
                    if(AppDelegate.numResults < 0)
                        AppDelegate.numResults = xmlParser.numResults;

                    System.out.println("Numb of Results:- " + AppDelegate.numResults);

                    //Add blank cell for more button
                    if(AppDelegate.properties.size() < xmlParser.numResults)
                        AppDelegate.properties.add(new Property());

                    //Refresh the ListView
                    try{handler.post(ReloadCells);}
                    catch(Exception e) { System.out.println(e);}

                    //dialog.dismiss();
                    if(AppDelegate.properties.size() < 1)
                        handler.post(NoResults_Dialog);
                }
                catch(Exception e){

                    //dialog.dismiss();
                    handler.post(DownloadFail_Dialog);
                    System.out.println(e);
                }
                finally{

                    //Dismiss Progress dialog
                    //dialog.dismiss();
                    System.gc();
                    new Thread(LoadImages).start();
                }
            }
        };
        new Thread(getResults).start();
    }


    protected void LoadMoreResults()
    {
        //Only proceed if more results are available
        if(AppDelegate.numResults > AppDelegate.properties.size()){
            Toast.makeText(getApplicationContext(), getResources().getString(R.string.search_more), Toast.LENGTH_SHORT).show();
            //Show progress dialog
            //dialog = ProgressDialog.show(getParent(), "",  getResources().getString(R.string.loading), true);

            Runnable getResults = new Runnable() {

                public void run() {
                    try{
                        AppDelegate.pageNum++;
                        String xml = null;

                        //Get XML Page as a String
                        xml = XMLfunctions.getXML(urlGen.createSearchURL() +  "&Page=" + AppDelegate.pageNum);
                        if(xml == null){
                            handler.post(DownloadFail_Dialog);
                            System.out.println("xml is null");
                            return;
                        }

                        //Add properties returned from XML Parser
                        AppDelegate.properties.addAll(AppDelegate.properties.size()-1, xmlParser.ParserXML(xml));// xmlParser.ParserXML(urlString);
                        handler.post(ReloadCells);
                    }
                    catch(Exception e){
                        System.out.println(e);
                        AppDelegate.pageNum--;
                        //dialog.dismiss();
                    }
                    finally{
                        //dialog.dismiss();
                        System.gc();
                        /*
                        if(thr_downloadImages.isAlive()){
                            thr_downloadImages.stop();
                            thr_downloadImages = null;
                        }   
                        thr_downloadImages = new Thread(LoadImages);
                        thr_downloadImages.start();
                        */
                        new Thread(LoadImages).start();
                    }
                }
            };
            new Thread(getResults).start();
        }
        else{
            handler.post(NoResults_Dialog);
        }
    }

    /**
     *  **IMPORTANT**
     * 
     *  The functions below are for the activity to be accessed at any point.
     *  They should only be access by Handler.
     * 
     *  By using the handler, this can be accessed from inside a separate Thread other than the Main one.
     *  This is done because some GUI elements can not be accessed inside a Thread, other than the Main.
     *  
     */

    private final Runnable LoadImages = new Runnable() {

        public void run() {

            for(int x=0; x <AppDelegate.properties.size(); x++){
                try{    
                    //Run the image download twice, because sometimes the images doesn't download the first time
                    if(AppDelegate.properties.get(x).img_thumb == null)
                        AppDelegate.properties.get(x).img_thumb = FindPropertyActivity.DownloadImage(AppDelegate.properties.get(x).str_imgURL1);
                    if(AppDelegate.properties.get(x).img_thumb == null)
                        AppDelegate.properties.get(x).img_thumb = FindPropertyActivity.DownloadImage(AppDelegate.properties.get(x).str_imgURL1);

                    handler.post(ReloadCells);
                }
                catch (Exception e) {System.out.println(e.toString());}
            }
        }
    };

    private final Runnable ReloadCells = new Runnable() {
        public void run() {
            adapter.UpdateDataSet(AppDelegate.properties);
            adapter.notifyDataSetChanged();
        }
    };

    private final Runnable DownloadFail_Dialog = new Runnable() {
        public void run() {
            AlertDialog.Builder builder = new AlertDialog.Builder(getParent());
            builder.setMessage(getResources().getString(R.string.download_fail))
                   .setCancelable(false)
                   .setPositiveButton(getResources().getString(R.string.ok), new DialogInterface.OnClickListener() {
                       public void onClick(DialogInterface dialog, int id) {
                            //do nothing
                       }
                   });

            AlertDialog alert = builder.create();
            alert.show();
        }
    };

    private final Runnable NoResults_Dialog = new Runnable() {
        public void run() {

            AlertDialog.Builder builder = new AlertDialog.Builder(getParent());
            builder.setMessage(getResources().getString(R.string.no_results))
                   .setCancelable(false)
                   .setPositiveButton(getResources().getString(R.string.ok), new DialogInterface.OnClickListener() {
                       public void onClick(DialogInterface dialog, int id) {
                            //do nothing
                       }
                   });
            AlertDialog alert = builder.create();
            alert.show();
        }
    };
}

我没有更多的空间来粘贴另一个类:(

任何帮助表示赞赏。

先感谢您!!

这是加载搜索的日志猫

09-11 13:13:47.451:I/System.out(8774):解析器完成!!09-11 13:13:52.541: I/System.out(8774): java.io.FileNotFoundException: http://images.ultrait.me/ImageProcessor.aspx?imageURL=381/Sales/321464/53674_T_ADDRESSES_52056_TN.jpg&Text=同意 09-11 13:13: 53.431 : I/System.out(8774): java.io.FileNotFoundException: http://images.ultrait.me/ImageProcessor.aspx?imageURL=381/Sales/321465/58467_T_ADDRESSES_57077_OT。 jpg&Text=让 我们同意 09-11 13:13:54.031: I/System.out(8774): java.io.FileNotFoundException: http://images.ultrait.me/ImageProcessor.aspx?imageURL=381/Sales/321466/ 58441_T_ADDRESSES_57075_OT.jpg&Text=让我们同意 09-11 13:13:54.651: I/System.out(8774): java.io.FileNotFoundException: http://images.ultrait.me/ImageProcessor.aspx?imageURL=381/Sales/321467/53631_T_ADDRESSES_52035_TN.jpg&Text=LET AGREED 09-11 13:13:55.801: I/System.out(8774): java.io。 FileNotFoundException: http ://images.ultrait.me/ImageProcessor.aspx?imageURL=381/Sales/321468/53626_T_ADDRESSES_52026_TN.jpg&Text=LET AGREED 09-11 13:13:59.591:I/System.out(8774):java。 io.FileNotFoundException: http://images.ultrait.me/ImageProcessor.aspx?imageURL=381/Sales/321469/53540_T_ADDRESSES_51961_TN.jpg&Text=LET AGREED 09-11 13:14:00.001: D/PowerManagerService(182): 获取WakeLock 标志=0x1 标签=AlarmManager 09-11 13:14:00.031:D/PowerManagerService(182):releaseWakeLock 标志=0x1 标签=AlarmManager 09-11 13:14:02.051:I/System.out(8774):java.io。文件未找到异常: http://images.ultrait.me/ImageProcessor.aspx?imageURL=381/Sales/321470/53659_T_ADDRESSES_52050_TN.jpg&Text=LET AGREED 09-11 13:14:03.691: I/System.out(8774): java.io。 FileNotFoundException: http://images.ultrait.me/ImageProcessor.aspx?imageURL=381/Sales/321471/53611_T_ADDRESSES_52018_TN.jpg&Text=LET AGREED 09-11 13:14:04.761: I/System.out(8774): java。 io.FileNotFoundException: http://images.ultrait.me/ImageProcessor.aspx?imageURL=381/Sales/321472/53589_T_ADDRESSES_51972_TN.jpg&Text=LET AGREED 09-11 13:14:05.531: I/System.out(8774): java.io.FileNotFoundException: http://images.ultrait.me/ImageProcessor.aspx?imageURL=381/Sales/321473/46397_T_ADDRESSES_43205_OT.jpg&Text=LET 同意 09-11 13:14:05.851: I/System.out(8774): java.io.FileNotFoundException: http://images.ultrait.me/ImageProcessor.aspx?imageURL=381/Sales/321474/53664_T_ADDRESSES_52053_TN.jpg&Text = 同意 09-11 13:14:06.531: I/System.out(8774): java.io.FileNotFoundException: http://images.ultrait.me/ImageProcessor.aspx?imageURL=381/Sales/321475/53669_T_ADDRESSES_52054_TN .jpg&Text=让 我们同意 09-11 13:14:08.701: I/System.out(8774): java.io.FileNotFoundException: http://images.ultrait.me/ImageProcessor.aspx?imageURL=381/Sales/321476 /53651_T_ADDRESSES_52049_TN.jpg&Text=让我们同意 09-11 13:14:09.991: I/System.out(8774): java.io.FileNotFoundException: http://images.ultrait.me/ImageProcessor.aspx?imageURL=381/Sales/321477/43296_T_ADDRESSES_40850_TN.jpg&Text=LET AGREED 09-11 13:14:11.331: I/System.out(8774): java.io。 FileNotFoundException: http: //images.ultrait.me/ImageProcessor.aspx ?imageURL=381/Sales/321478/53944_T_ADDRESSES_52241_TN.jpg&Text=LET 同意 09-11 13:14:11.961:I/System.out(8774):结果数量:- 177 09-11 13:14:12.031:I/System.out(8774):java.net.MalformedURLException:协议未找到:09-11 13:14:12.031:I/System.out(8774):java.lang.NullPointerException 09-11 13:14:12.031:I/System.out(8774):java.net.MalformedURLException:未找到协议:09-11 13:14:12.031:I/System.out(8774):java.lang.NullPointerException 09-11 13:14:12.181:I/pcm_service(107):处理 rmnet 事件 09-11 13 :14:12.181: I/pcm_service(107): rstate == pcm_monitor_kevents 中的 PCM_RMNETSTATE_ERROR 09-11 13:14:12.181: I/dun_service(115): 处理 rmnet 事件 09-11 13:14:12.181: I/dun_service( 115):发布事件 3 09-11 13:14:12.191:I/dun_service(115):收到事件:DUN_EVENT_RMNET_DOWN 09-11 13:14:12.191:I/dun_service(115):在状态 (DUN_STATE_USB_UNPLUG) 09-11 13:14:12.191 中收到事件 (DUN_EVENT_RMNET_DOWN):I/dun_service(115):忽略 USB_UNPLUG_STATE 中的事件 DUN_EVENT_RMNET_DOWN 09-11 13:14:12.191:I/dun_service(115):移至状态(DUN_STATE_USB_UNPLUG)

4

1 回答 1

1

我没有检查你的代码,但我想到的第一件事是:你检查过应用程序的权限吗?它可能来自那里。(EG:没有互联网许可,找不到文件,因为它无权访问它)

编辑:如果这个“str_imageURLs[i]”没有返回奇怪的东西,你应该检查(调试或记录)(你应该去掉 URL 中的空格)。

然后,如果有问题,我想它来自这个:“FindPropertyActivity.DownloadImage”你能发布吗?您是否将图像作为输入流并从中形成可绘制对象(如果不是在 DownloadImage 中完成的操作)?

Edit2:我创建了一个基本应用程序,布局中只有一个 ImageView。然后我使用您的“DownloadImage”方法从没有附加参数的 url 获取图像(我停在“.jg”)。它不适用于 android 4.2,因为它要求它是异步的。

我在我的主要活动中添加了这个,然后它起作用了:

ThreadPolicy tp = ThreadPolicy.LAX;
StrictMode.setThreadPolicy(tp);

但显然,这不是要做的事情。

问题既不是您的 URL 也不是您获取图像的方法。它适用于 android 4.2。

你能把你所有的 system.out.println*** 替换成 Log.e("PutClassNameHere", "Put your cutom message there", throwable); ? 这将在您的 logCat 中写入错误

于 2013-09-11T12:38:45.377 回答