//need to make this call async to make responsive screen private async void BindVehicleImages() { if (CommonFunctions.IsNetworkConnected()) { Java.IO.File _dir; //Environment.DirectoryPictures = "Images"; _dir = new Java.IO.File(Android.OS.Environment.ExternalStorageDirectory + "/RentACar" + "/" + rentRunningTrans.RegNo); //km12akk // Get the latitude and longitude entered by the user and create a query.km12akk";// //string url = "https://uk1.ukvehicledata.co.uk/api/datapackage/VehicleImageData?v=2&api_nullitems=1&auth_apikey=a418b0ad-33ab-4953-9a00-9d3ea8a12319&key_VRM=" + rentRunningTrans.RegNo; // Fetch the vehicle information asynchronously, // parse the results, then update the screen: // objVehicleImageList = await GetVehicleImagesfromAPIAsync(url); // _markdamage.SetBackgroundResource(Resource.Drawable.UK1); // ParseAndDisplay (json); //this.progressLayout.Visibility = ViewStates.Visible; _layoutVehicleImages = FindViewById <LinearLayout>(Resource.Id.layoutVehicleImages); //if (objVehicleImageList != null) { if (_dir.Exists() && _dir.ListFiles().Count() > 0) { Java.IO.File[] _objVehicleImageList = _dir.ListFiles(); //Needed to uncommment for (int i = 0; i < _objVehicleImageList.Count(); i++) //for (int i = 0; i < 6; i++) { ImageView imgVehicle = new ImageView(this); imgVehicle.SetMaxWidth(60); imgVehicle.SetMaxHeight(60); imgVehicle.LayoutParameters = new LinearLayout.LayoutParams(150, 150); imgVehicle.Visibility = ViewStates.Visible; imgVehicle.Id = i + 1; //var imageBitmap =CommonFunctions.GetBitmapFromUrl(objVehicleImageList.Response.DataItems.VehicleImages.ImageDetailsList[i].ImageUrl); // imgVehicle.SetImageBitmap(imageBitmap); imgVehicle.SetImageURI(Android.Net.Uri.Parse(_objVehicleImageList[i].AbsolutePath)); //imgVehicle.SetBackgroundResource(Resource.Drawable.CarExterior); imgVehicle.SetOnClickListener(this); // add into my parent view _layoutVehicleImages.AddView(imgVehicle); } //objVehicleImageList["DataItems"]["VehicleImages"]["ImageDetailsList"] } else { try { ImageView imgVehicle = new ImageView(this); imgVehicle.SetMaxWidth(60); imgVehicle.SetMaxHeight(60); LinearLayout.LayoutParams obj = new LinearLayout.LayoutParams(150, 150); obj.SetMargins(5, 5, 5, 5); //imgVehicle.LayoutParameters = new LinearLayout.LayoutParams(150, 150); imgVehicle.Visibility = ViewStates.Visible; // LinearLayout.LayoutParams obj = new LinearLayout.LayoutParams(100, 100); //obj.SetMargins(5,5,5,5); imgVehicle.LayoutParameters = obj; if (rentRunningTrans.VehicleType == "Car") { imgVehicle.Id = 101; imgVehicle.SetBackgroundResource(Resource.Drawable.CarExterior); imgVehicle.SetOnClickListener(this); //imgVehicle.SetPadding(10, 10, 10, 10); // add into my parent view _layoutVehicleImages.AddView(imgVehicle); ImageView imgVehicleInterior = new ImageView(this); imgVehicleInterior.SetMaxWidth(60); imgVehicleInterior.SetMaxHeight(60); //LinearLayout.LayoutParams objj = new LinearLayout.LayoutParams(150, 150); //obj.SetMargins(5, 5, 5, 5); imgVehicleInterior.LayoutParameters = obj; // imgVehicleInterior.LayoutParameters = new LinearLayout.LayoutParams(150, 150); imgVehicleInterior.Visibility = ViewStates.Visible; imgVehicleInterior.Id = 102; imgVehicleInterior.SetBackgroundResource(Resource.Drawable.VehicleInteriorImg); imgVehicleInterior.SetOnClickListener(this); //imgVehicleInterior.SetPadding(10, 10, 10, 10); _layoutVehicleImages.AddView(imgVehicleInterior); _markdamage.SetBackgroundResource(Resource.Drawable.CarExterior); iCurrentDamageImageId = 101; } else if (rentRunningTrans.VehicleType == "Luton Van") { imgVehicle.Id = 201; imgVehicle.SetBackgroundResource(Resource.Drawable.LutonVan); imgVehicle.SetOnClickListener(this); // add into my parent view _layoutVehicleImages.AddView(imgVehicle); _markdamage.SetBackgroundResource(Resource.Drawable.LutonVan); iCurrentDamageImageId = 201; } else if (rentRunningTrans.VehicleType == "Standard Van") { imgVehicle.Id = 301; imgVehicle.SetBackgroundResource(Resource.Drawable.StandardVan); imgVehicle.SetOnClickListener(this); // add into my parent view _layoutVehicleImages.AddView(imgVehicle); _markdamage.SetBackgroundResource(Resource.Drawable.StandardVan); iCurrentDamageImageId = 301; } _markdamage.RemoveAllViews(); _markdamage.SetOnTouchListener(this); _markdamage.SetOnDragListener(this); if (rentRunningTrans.RentVehicleDamage != null) { foreach (var objVehicleMarkDamage in rentRunningTrans.RentVehicleDamage.Where(x => x.DamageImageId == iCurrentDamageImageId).OrderBy(x => x.DamageNumber)) { this.DrawDamageCircle(objVehicleMarkDamage); iLastDamageNumber = objVehicleMarkDamage.DamageNumber; } } } catch (Exception ex) { //Do nothing } } } } else { AlertDialog.Builder alert = new AlertDialog.Builder(this); alert.SetMessage("Please enable internet to get vehicle images from API."); alert.SetNeutralButton("OK", delegate { }); alert.Create().Show(); } //this.progressLayout.Visibility = ViewStates.Gone; }