Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/182.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用visual studio c在android中加载多个URL#_C#_Android_Url_Load_Infinite - Fatal编程技术网

C# 如何使用visual studio c在android中加载多个URL#

C# 如何使用visual studio c在android中加载多个URL#,c#,android,url,load,infinite,C#,Android,Url,Load,Infinite,我正在开发一个应用程序(apk),它只不过是存储图像和位图图像(url)的显示。这是我的第一个应用程序&我通过观看不同的教程来使用代码,我需要在youtube上编写代码,并搜索网站以获取帮助。 下面是应用程序的全部代码 namespace androidapk { [Activity(Label = "android", MainLauncher = true, Icon = "@drawable/icon")] public class Activity : Android.

我正在开发一个应用程序(apk),它只不过是存储图像和位图图像(url)的显示。这是我的第一个应用程序&我通过观看不同的教程来使用代码,我需要在youtube上编写代码,并搜索网站以获取帮助。 下面是应用程序的全部代码

namespace androidapk
{
    [Activity(Label = "android", MainLauncher = true, Icon = "@drawable/icon")]

    public class Activity : Android.App.Activity
    {
        private ImageView ImageContainer;
       // private ImageView UrlContainer;
        private int CurrentImage = 0;
     //   private int CurrentUrl = 0;
        private Button nextClick;
        private Button backClick;
        int[] images = { Resource.Drawable.orange, Resource.Drawable.Icon, Resource.Drawable.images02, Resource.Drawable.buttonarrow, Resource.Drawable.images };
      //  string[] Urls = { "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRiFsZgrhpFIx496REDS7XimTQVo07W6zFwULlNFIO3OpgPNCMc,https://www.google.com.pk/imgres?imgurl=http%3A%2F%2Fpngimg.com%2Fupload%2Fwater_PNG3290.png&imgrefurl=http%3A%2F%2Fpngimg.com%2Fimg%2Fnature%2Fwater&docid=egiWzVBWw_5-bM&tbnid=geXqbWHLhH-PPM%3A&w=1280&h=798&bih=667&biw=1366&ved=0ahUKEwitguqNm8POAhWHWhQKHc_TBewQMwgxKAEwAQ&iact=mrc&uact=8" };



        public Action<object, EventArgs> Click { get; private set; }
        public int FindViewByIddemoImageview { get; private set; }

        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);       
            SetContentView(Resource.Layout.Main);
            nextClick = (Button)FindViewById(Resource.Id.Btnup);
            backClick = (Button)FindViewById(Resource.Id.Btnback);
            ImageContainer = (ImageView)FindViewById(Resource.Id.demoImageView);
           // UrlContainer = (ImageView)FindViewById();


            //Android.Net.Uri url = Android.Net.Uri.Parse("https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRiFsZgrhpFIx496REDS7XimTQVo07W6zFwULlNFIO3OpgPNCMc");

           var imageBitmap = GetImageBitmapFromUrl("https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRiFsZgrhpFIx496REDS7XimTQVo07W6zFwULlNFIO3OpgPNCMc");

            RunOnUiThread(() => ImageContainer.SetImageBitmap(imageBitmap));

            nextClick.Click += delegate {
                 NextImagePic();
          //      NextImageUrl();
            };

            backClick.Click += delegate {
                BackImagePic();
            };
         //HapticFeedbackConstants
        }

        private Bitmap GetImageBitmapFromUrl(string url)
        {
            Bitmap imageBitmap = null;

            using (var webClient = new WebClient())
            {
                var imageBytes = webClient.DownloadData(url);
                if (imageBytes != null && imageBytes.Length > 0)
                {
                    imageBitmap = BitmapFactory.DecodeByteArray(imageBytes, 0, imageBytes.Length);
                }
            }

            return imageBitmap;
        }

        private void NextImagePic()
        {
            if (CurrentImage == 0)
            {
                RunOnUiThread(() => ImageContainer.SetImageResource(images[CurrentImage + 1]));
                CurrentImage++;
            }
            else
            {
                if (CurrentImage < images.Count() - 1)
                {
                    CurrentImage++;
                    RunOnUiThread(() => ImageContainer.SetImageResource(images[CurrentImage]));
                }
                else
                {
                    Toast.MakeText(this, "This is last image.", ToastLength.Long).Show();
                }
            }
        }
        private void BackImagePic()
        {
            if (CurrentImage == 0)
            {
                RunOnUiThread(() => ImageContainer.SetImageResource(images[CurrentImage]));
                Toast.MakeText(this, "This is first image.", ToastLength.Long).Show();
            }
            else
            {
                CurrentImage--;
                RunOnUiThread(() => ImageContainer.SetImageResource(images[CurrentImage]));
            }
        }
    }
}
namespace-androidapk
{
[活动(Label=“android”,MainLauncher=true,Icon=“@drawable/Icon”)]
公共课堂活动:Android.App.Activity
{
私有ImageView图像容器;
//私有ImageView URL容器;
私有int CurrentImage=0;
//私有int CurrentUrl=0;
下一步单击私人按钮;
私人按钮点击;
int[]images={Resource.Drawable.orange,Resource.Drawable.Icon,Resource.Drawable.images02,Resource.Drawable.button窄,Resource.Drawable.images};
//字符串[]URL={"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRiFsZgrhpFIx496REDS7XimTQVo07W6zFwULlNFIO3OpgPNCMc,https://www.google.com.pk/imgres?imgurl=http%3A%2F%2Fpngimg.com%2Fupload%2Fwater_PNG3290.png&imgrefurl=http%3A%2F%2Fpngimg.com%2Fimg%2Fnature%2Fwater&docid=egiWzVBWw_5-bM&tbnid=geXqbWHLhH PPM%3A&w=1280&h=798&bih=667&biw=1366&ved=0ahUKEwitguqNm8POAHWHQKHC_TBewQMwgxKAEwAQ&iact=mrc&uact=8“};
公共操作单击{get;private set;}
public int findviewbyddemoimageview{get;private set;}
创建时受保护的覆盖无效(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
SetContentView(Resource.Layout.Main);
nextClick=(按钮)findviewbyd(Resource.Id.Btnup);
backClick=(按钮)findviewbyd(Resource.Id.Btnback);
ImageContainer=(ImageView)FindViewById(Resource.Id.demoImageView);
//UrlContainer=(ImageView)FindViewById();
//Android.Net.uriurl=Android.Net.Uri.Parse(“https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRiFsZgrhpFIx496REDS7XimTQVo07W6zFwULlNFIO3OpgPNCMc");
var imageBitmap=GetImageBitmapFromUrl(“https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRiFsZgrhpFIx496REDS7XimTQVo07W6zFwULlNFIO3OpgPNCMc");
RunOnUiThread(()=>ImageContainer.SetImageBitmap(imageBitmap));
下一步单击。单击+=委托{
NextImagePic();
//NextImageUrl();
};
单击鼠标右键。单击+=委派{
BackImagePic();
};
//触觉反馈常数
}
私有位图GetImageBitmapFromUrl(字符串url)
{
位图imageBitmap=null;
使用(var webClient=new webClient())
{
var imageBytes=webClient.DownloadData(url);
if(imageBytes!=null&&imageBytes.Length>0)
{
imageBitmap=BitmapFactory.DecodeByteArray(imageBytes,0,imageBytes.Length);
}
}
返回图像位图;
}
私有void NextImagePic()
{
如果(CurrentImage==0)
{
RunOnUiThread(()=>ImageContainer.SetImageResource(图像[CurrentImage+1]));
CurrentImage++;
}
其他的
{
if(CurrentImageImageContainer.SetImageResource(images[CurrentImage]);
}
其他的
{
Toast.MakeText(这是最后一幅图像),ToastLength.Long.Show();
}
}
}
私有void BackImagePic()
{
如果(CurrentImage==0)
{
RunOnUiThread(()=>ImageContainer.SetImageResource(images[CurrentImage]);
Toast.MakeText(这是“这是第一个图像”),ToastLength.Long.Show();
}
其他的
{
当前图像--;
RunOnUiThread(()=>ImageContainer.SetImageResource(images[CurrentImage]);
}
}
}
}

我已成功显示使用数组[]存储的图像,但我希望使用URL在数组中显示多个图像。我已使用单个URL显示单个图像。

如果您可以从URL显示单个图像,则您已完成3/4的工作,只需根据需要多次执行相同的操作。此操作:
var imageBitmap=GetImageBitmapFromUrl(“http://image.url.png”;
是“魔力”所在“发生了。我已经使用数组显示了图像&我想对使用URL列表的URL或字符串数组的URL执行相同的操作,我可以根据应用程序的需要在其中添加许多URL。您的问题不太清楚,是否要创建URL列表?”?如果是这样,请使用
列出URL列表
并使用
添加
的方法添加所需的URL,访问每个URL时,您必须执行以下操作:
URL列表[索引]
。如果您可以从URL中显示一个图像,则您完成了3/4的工作,只需按照您需要的次数执行相同的操作即可。这:
var-imageBitmap=GetImageBitmapFromUrl(“http://image.url.png");
是“神奇”发生的地方。我已经使用数组显示了图像&我想使用URL列表或字符串数组对URL执行相同的操作,我可以根据应用程序的需要在其中添加许多URL。您的问题不太清楚,是否要创建URL列表?如果是这样,请使用
列出URL列表
并使用
添加
方法添加所需的URL,以访问每个URL,您必须执行以下操作:
URL列表[索引]