Отображение изображения из сети в ARCore - PullRequest
0 голосов
/ 01 февраля 2019

Я пытаюсь использовать Glide для извлечения изображения с использованием HTTP и отображения его в AR с помощью ARCore Sceneform.Файл макета работает, потому что отображается описанная в нем граница, но само изображение не отображается и даже не извлекается.

Вот мой код:

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"

    />

Вот декларации сетевых разрешений в манифесте:

  <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);

1 Ответ

0 голосов
/ 01 февраля 2019

Я не вижу, чтобы вызов Glide и представление были связаны каким-либо образом.Вы должны загрузить изображение в ImageView.

...