Android ImageView не может найти ресурс, где растровое изображение может - PullRequest
0 голосов
/ 27 января 2020

xamarin.forms имеет учебник для создания экранов spla sh в android

Этот код является моим результатом следования учебнику , и он работает

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
  <item>
    <color android:color="@color/splash_background"/>
  </item>
  <item>
    <bitmap
      android:src="@drawable/monstersplash"
      android:tileMode="disabled"
      android:gravity="fill_vertical|fill_horizontal"/>
  </item>
</layer-list>

Но теперь я также хочу, чтобы мое изображение соответствовало аспекту на странице.

Я нашел несколько постов, предлагающих следующий код:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:id="@+id/splashlinearlayout"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent">
      <ImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:src="@drawable/monstersplash"
        android:adjustViewBounds="true"
        android:scaleType="fitCenter" ></ImageView>
    </LinearLayout>

Но этот код приводит к исключению ResourcesNotFoundException: android .content.res.Resources $ NotFoundException: Drawable com.companyname.BB.App:drawable/splash_screen с идентификатором ресурса # 0x7f070141

I пробовал разные конфигурации со списком слоев / линейным макетом, но каким-то образом Imageview, похоже, не может загрузить мое изображение monsterspla sh .png, в то время как параметр источника такой же, как с растровым изображением. Любая идея ?

Полный контекст: Вышеупомянутый код находится в drawable / splash_screen. xml в моих стилях. xml У меня есть ссылка на drawable вот так:

<style name="SplashTheme" parent ="Theme.AppCompat.Light.NoActionBar">
    <item name="android:windowBackground">@drawable/splash_screen</item>
    <item name="android:windowNoTitle">true</item>  
    <item name="android:windowFullscreen">true</item>  
    <item name="android:windowContentOverlay">@null</item>  
    <item name="android:windowActionBar">true</item>  
  </style>

И я создал splashactiv ссылка на тему

[Activity(Theme = "@style/SplashTheme", MainLauncher = true, NoHistory = true)]
    public class SplashActivity : AppCompatActivity
    {

1 Ответ

0 голосов
/ 28 января 2020

Так как он работает в Bitmap. Возможно, проблема вызвана IDE или кэшем проекта.

  1. Удалите папку bin и obj в своем проекте, затем очистите и перестройте ее.
  2. Удалите все содержимое в файл Resource.design.cs, затем перестройте проект.

Если он все еще не работает, вы можете создать новый проект и проверить, существует ли проблема.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...