Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/216.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
Android 如何以编程方式从URL(而不是xml布局)向视图添加可绘制内容_Android - Fatal编程技术网

Android 如何以编程方式从URL(而不是xml布局)向视图添加可绘制内容

Android 如何以编程方式从URL(而不是xml布局)向视图添加可绘制内容,android,Android,我目前正在尝试动态创建一个Android视图对象,然后根据用户从图库中选择的内容将该视图添加到一个小部件中。问题是它没有可提取资源的setter。设置图像的唯一方法是预定义xml布局。我无法设置用户选择的图像 即使我可以创建一个视图,它也不会设置正确的属性。我尝试实现我自己的,并公开了drawables,但后来遇到了“未找到类”的问题,我读到了它不可能解决的问题 是否可以在构造函数的属性集中提供一些内容 如果我能找到设置选项的方法,我甚至不需要自定义视图 android:drawable1="

我目前正在尝试动态创建一个Android视图对象,然后根据用户从图库中选择的内容将该视图添加到一个小部件中。问题是它没有可提取资源的setter。设置图像的唯一方法是预定义xml布局。我无法设置用户选择的图像

即使我可以创建一个视图,它也不会设置正确的属性。我尝试实现我自己的,并公开了drawables,但后来遇到了“未找到类”的问题,我读到了它不可能解决的问题

是否可以在构造函数的属性集中提供一些内容

如果我能找到设置选项的方法,我甚至不需要自定义视图

 android:drawable1="@drawable/predefined_image"
 android:drawable2="@drawable/predefined_image" 
并通过属性集传递,因为我知道它只需要这些属性,并从中创建可绘制的属性


好的,让我们澄清一下这个问题

我有一个xml布局文件

<AndroidSystemWidget
android:drawable1="@Drawable/drawable1"
android:drawable2="@Drawable/drawable2"
/>

我想在我的小部件配置中创建这个AndroidSystemWidget,上面的两个png文件设置为drawable1和drawable2,然后通过应用程序小部件提供商上的视图进行设置。

您的问题有点模糊,请原谅我的误解,但您可以简单地使用
ImageView
,然后通过
setImageFoo
调用设置图像:

imageView.setImageBitmap(bitmap);
imageView.setImageResource(R.drawable.my_image);
imageView.setImageDrawable(drawable);
如果使用自定义视图并使用画布调用进行绘图,则还可以使用各种
drawBitmap
例程


如果您希望按照标题所示通过网络加载图像,那么您可以签出,其中还包含到DroidFu库的链接。

发布一些您尝试使用的代码示例可能会帮助人们回答您的问题。据我所知,您无法从xml引用文件路径。为什么不修改小部件呢?我不想引用xml中的路径。关键是我无法使用xml,因为在进入配置屏幕并要求用户从库中选择图像之前,我不知道图像是什么。我需要能够设置2个drawable1和2,但是在XML之外,但是没有用于drawable1和drawable2的设置器。这就是我正在努力做的。我创建了自己版本的小部件,但android不允许您使用自定义小部件。我有一个自定义视图,但由于允许添加到小部件的类受到限制,我必须使用现有的android应用程序小部件提供商。问题是它只能通过xml设置属性,我需要一种方法来创建相同的xml设置,但不是使用android:drawable=“@drawable/resource1”,我需要从文件路径在代码中这样做。没有为xml中的可绘制集合公开任何getter和setter。仅在构造函数上设置属性集。哦,谢谢你的链接,以后会有用的;)
imageView.setImageBitmap(bitmap);
imageView.setImageResource(R.drawable.my_image);
imageView.setImageDrawable(drawable);