【问题标题】:Display image from network in ARCore在 ARCore 中显示来自网络的图像
【发布时间】:2019-01-31 21:36:55
【问题描述】:

我正在尝试使用 Glide 通过 HTTP 获取图像并使用 ARCore Sceneform 在 AR 中显示它。布局文件正在工作,因为其中描述的边框正在显示,但图像本身没有显示甚至未获取。

这是我的代码:

View view = View.inflate(context, R.layout.test_view, null);
      if (v == 2) {

          //ImageView imageView = (ImageView) renderable.getView();
           Glide.with(context)
                  .asDrawable()
                  .load("http://i.imgur.com/DvpvklR.png")
                  //.into(view);
                   .submit(-1,-1);

          rendobject =
                  ViewRenderable.builder()
                          .setView(context, view)
                          .setVerticalAlignment(ViewRenderable.VerticalAlignment.BOTTOM)
                          //.setSizer(new FixedWidthViewSizer(0.2f))
                          .setSizer(new FixedHeightViewSizer(0.15f))
                          .build()
                          .thenAccept(renderable -> {
                              testViewRenderable = renderable;
          });

这是布局文件:

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/planetInfoCard"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:background="@drawable/rounded_bg"
    android:gravity="center"
    android:orientation="vertical"
    android:padding="4dp"

    />

以下是 Manifest 中的网络权限声明:

  <uses-permission android:name="android.permission.INTERNET"/>
  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

我不知道我错过了什么/做错了什么。

编辑: 这是我也尝试过的,但成功扫描增强图像后什么都没有显示:

rendobject =
                  ViewRenderable.builder()
                          .setView(context, R.layout.test_view)
                          .setVerticalAlignment(ViewRenderable.VerticalAlignment.BOTTOM)
                          .setSizer(new FixedHeightViewSizer(0.1f))
                          .build()
                          .thenAccept(renderable -> {
                              testViewRenderable = renderable;
                              ImageView imageView = (ImageView) renderable.getView();

                         Picasso.get()
                                 .load("http://i.imgur.com/DvpvklR.png")
                                 .fit()
                                 .centerInside()
                                 .into(imageView);

【问题讨论】:

    标签: imageview augmented-reality android-glide arcore sceneform


    【解决方案1】:

    我没有看到 Glide 调用和视图以任何方式连接。您必须将图像加载到 ImageView 中。

    【讨论】:

    • 这实际上是我在尝试之前尝试过的,但是在成功检测到增强图像后它没有显示任何内容。更新了问题以显示我在此之前使用毕加索尝试过的内容。
    猜你喜欢
    • 2011-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-30
    • 2012-04-28
    • 1970-01-01
    • 2018-11-15
    • 2019-03-23
    相关资源
    最近更新 更多