当前位置: 首页 > 面试题库 >

如何将图像文件加载到ImageView?

汪建德
2023-03-14
问题内容

我试图从文件选择器中选择图像文件后立即显示它。文件选择器仅限于.png和.jpg文件,所选文件存储在File类型的变量中。为此,我已经设置了ImageView,并且我希望使用此新文件设置图像,唯一的问题是文件类型不是图像。

如何做到这一点?到目前为止的代码…

    public void fileSelection(){

        FileChooser fileChooser = new FileChooser();
        fileChooser.setTitle("Select Profile Picture");
        fileChooser.getExtensionFilters().addAll(new FileChooser.ExtensionFilter("Image Files", "*.png", "*jpg"));
        File selectedFile = fileChooser.showOpenDialog(null);
        File selectedFileInput = selectedFile;

        if(selectedFile != null) {
            selectedFileOutput.setText("File selected: " + selectedFile.getName());
            previewPicture.setImage();
        } else {
            selectedFileOutput.setText("Please select a profile picture...");
        }
    }

问题答案:

您可以简单地用

Image image = new Image(selectedFile.toURI().toString());

然后将其放在ImageView

previewPicture.setImage(image);

其他构造函数提供了对加载图像所需资源的更多控制。如果要强制将图像设置为特定大小,则可以在加载时调整其大小,如果用户选择大图像,而只想显示缩小的版本,则可以节省html" target="_blank">内存。此外,加载大图像可能会花费一些时间,因此您不应将其加载到UI线程上。Image采用字符串形式的URL
的构造函数可以选择在后台线程中自动加载图像。以下内容可强制宽度和高度均不超过240像素(同时保持原始宽高比),并在背景中加载图像(因此不会阻塞UI):

Image image = new Image(selectedFile.toURI().toString(),
    240, // requested width
    240, // requested height
    true, // preserve ratio
    true, // smooth rescaling
    true // load in background
);

请参阅文档以获取其他可用的构造函数。



 类似资料:
  • 我正在使用webpack管理reactjs项目。我想通过webpack

  • 我将图像路径(来自图库的图像)存储在SQLite数据库中,现在加载到图像视图中。。。并使用此代码: 和错误: E/BitmapFactory:无法解码流:java.io.FileNotFoundException:/storage/emulated/0/DCIM/Camera/IMG_20161230_224205.jpg(权限被拒绝)

  • 我想在对话框窗口中显示图像(保存在项目文件夹中),但当我运行我的方法showDialogWithImage时,我会得到文件NotFoundException:imgs\pic1。jpg(系统无法找到指定的文件),尽管图像位于那里。 我也尝试过以这种方式加载图像: Image=new Image(getClass(). getResourceAsStream(path));,但遇到了同样的问题。 是

  • 问题内容: 我想在对话框窗口中显示图像(保存在项目文件夹中),但是当我运行方法showDialogWithImage时,我得到FileNotFoundExcpetion:imgs \ pic1.jpg(系统找不到指定的文件),尽管图像位于此处。 我也尝试过以这种方式加载图像: Image image = new Image(getClass()。getResourceAsStream(path))

  • 问题内容: 我想将图像文件添加到json对象中。是否可以将图像文件添加到json对象中? 我尝试了下面的代码,但它不起作用?因为我想将json对象发送到服务器,所以服务器将读取我的图像文件并将其存储到该数据库中。 因此,当我打印此json对象时,它仅显示图像存储的图像路径。我想要文件以将其发送到服务器。 问题答案: 您将需要阅读从入,并把该对象到您。 您还应该看看以下帖子: JSON中的ByteA

  • 我有一个url数组,我必须加载所有图像并将其放入图像数组。 我在试这个 但它不起作用。我该怎么做?