WebView wait for images

by Mark Murphy » Fri, 23 Apr 2010 05:16:54 GMT


Sponsored Links
 


At least for your initial page, you can make it invisible to start, then
use a WebViewClient and onPageFinished() to find out when the page is
fully-loaded, then make it visible. I've used this in conjunction with a
custom RotateAnimation progress indicator, for example.

-- 
Mark Murphy (a Commons Guy)
 http://commonsware.com  |  http://twitter.com/commonsguy 

Android Consulting:  http://commonsware.com/consulting 

--



WebView wait for images

by Maps.Huge.Info (Maps API Guru) » Fri, 23 Apr 2010 05:27:15 GMT


 Have you tried using the onPageFinished test?

Additionally, if you have control over the page you're loading, you
can test for images directly in the JavaScript easily enough.

-John Coryat

"Radar Now!"

"What Zip Code?"

--


Sponsored Links


Other Threads

1. Update facebook & twydroid

Barusan iseng buka market.. ada update baru utk facebook & twydroid.. don't
know what has been changed though..

Ari Fahrizal

-- 
"

2. if i want to add overlay item to appear in map & also the gps point

package ntryn.n;


import com.google.android.maps.MapActivity;
import com.google.android.maps.MapView;
import com.google.android.maps.MapController;
import com.google.android.maps.GeoPoint;


import android.content.Context;

import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;

import android.location.Geocoder;
import android.location.Address;

import com.google.android.maps.Overlay;
import android.graphics.Canvas;
import android.graphics.Point;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.drawable.Drawable;

import java.util.List;
import java.util.Locale;
import java.io.IOException;




import android.os.Bundle;
import android.widget.Toast;

public class ntryn extends MapActivity {
    private MapView mapView;
    private MapController mapController;

    private LocationManager locationManager;
    private LocationListener locationListener;
    List<Overlay> mapOverlays;
    Drawable drawable, drawable2 ;
    HelloItemizedOverlay itemizedoverlay;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        locationManager = (LocationManager)
getSystemService(Context.LOCATION_SERVICE);

        locationListener = new GPSLocationListener();

        locationManager.requestLocationUpdates(
            LocationManager.GPS_PROVIDER,
            0,
            0,
            locationListener);

        mapView = (MapView) findViewById(R.id.mapView);

        // enable Street view by default
        mapView.setStreetView(true);

        // enable to show Satellite view
        // mapView.setSatellite(true);

        // enable to show Traffic on map
        // mapView.setTraffic(true);
        mapView.setBuiltInZoomControls(true);

        mapController = mapView.getController();
        mapController.setZoom(16);

        mapController = mapView.getController();

        mapView.invalidate();

        GeoPoint p;
        String coordinates[] = {"30.084691643714909",
"31.335958242416382"};
        double lat = Double.parseDouble(coordinates[0]);
        double lng = Double.parseDouble(coordinates[1]);

        p = new GeoPoint(
            (int) (lat * 1E6),
            (int) (lng * 1E6));

        mapController.animateTo(p);
        mapController.setZoom(17);

      //  HelloItemizedOverlay itemizedoverlay = new
HelloItemizedOverlay(drawable);
        MapOverlay mapOverlay = new MapOverlay();
        List<Overlay> listOfOverlays = mapView.getOverlays();
        listOfOverlays.clear();
        listOfOverlays.add(mapOverlay);

        mapView.invalidate();
    }


    @Override
    protected boolean isRouteDisplayed() {
        return false;
    }

    private class GPSLocationListener implements LocationListener
    {
        public void onLocationChanged(Location location) {
            if (location != null) {
                GeoPoint point = new GeoPoint(
                        (int) (location.getLatitude() * 1E6),
                        (int) (location.getLongitude() * 1E6));

                /* Toast.makeText(getBaseContext(),
                        "Latitude: " + location.getLatitude() +
                        " Longitude: " + location.getLongitude(),
                        Toast.LENGTH_SHORT).show();*/

                mapController.animateTo(point);
                mapController.setZoom(16);

           //     GeoPoint point1 = new
GeoPoint{"30.084691643714909,31.335958242416382"};

                // add marker
                MapOverlay mapOverlay = new MapOverlay();
                mapOverlay.setPointToDraw(point);
                List<Overlay> listOfOverlays = mapView.getOverlays();
                listOfOverlays.clear();
                listOfOverlays.add(mapOverlay);

                String address = ConvertPointToLocation(point);
                Toast.makeText(getBaseContext(), address,
Toast.LENGTH_SHORT).show();

                mapView.invalidate();
            }
        }

        public String ConvertPointToLocation(GeoPoint point) {
            String address = "";
            Geocoder geoCoder = new Geocoder(
                    getBaseContext(), Locale.getDefault());
            try {
                List<Address> addresses = geoCoder.getFromLocation(
                    point.getLatitudeE6()  / 1E6,
                    point.getLongitudeE6() / 1E6, 1);

                if (addresses.size() > 0) {
                    for (int index = 0; index <
addresses.get(0).getMaxAddressLineIndex(); index++)
                        address +=
addresses.get(0).getAddressLine(index) + " ";
                }
            }
            catch (IOException e) {
                e.printStackTrace();
            }

            return address;
        }

        public void onProviderDisabled(String provider) {
        }

        public void onProviderEnabled(String provider) {
        }

        public void onStatusChanged(String provider, int status,
Bundle extras) {
        }
    }




    class MapOverlay extends Overlay
    {
        private GeoPoint pointToDraw;
        private GeoPoint p1;
        public void setPointToDraw(GeoPoint point) {
            pointToDraw = point;

        }

        public GeoPoint getPointToDraw() {
            return pointToDraw;
        }
        public void setp1(GeoPoint po1) {
            p1 = po1;

        }

        public GeoPoint getp1() {
            return p1;
        }


        @Override
        public boolean draw(Canvas canvas, MapView mapView, boolean
shadow, long when) {
            super.draw(canvas, mapView, shadow);

            // convert point to pixels
            Point screenPts = new Point();
            mapView.getProjection().toPixels(pointToDraw, screenPts);

            // add marker
            Bitmap bmp = BitmapFactory.decodeResource(getResources(),
R.drawable.dotred);
            canvas.drawBitmap(bmp, screenPts.x, screenPts.y - 24,
null); // 24 is the height of image
            return true;
        }
    }



} whats wrong in the code please let me how how to add to this code
overlay items in specific loction rather than the overlay item appear
in the loction the gps locate i'm in pleaseeeeeeeeeeeeeee help

-- 

3. help enabling NFS rootfs support

4. http://apps-for-android.googlecode.com/svn default.properties not found

5. HDPI-device using mdpi resources

6. Removing .jar file from project.

7. Android Dashboard - GirdView or LinearLayout