Ошибка, создав публичную переменную с рукописного шрифта C# в Unity 3d

У меня есть следующая ситуация. Я стараюсь размещать изображение с рукописного шрифта C# в Unity 3d, во время главный файл читает с Vuforia. То, что последует за мной, состоит в том, что с момента, который создал публичную переменную для изображения, он говорит мне, что она неясная.

В этой же самой сцене у меня есть текст, который я ввожу с базы данных, внутри элемента UI тип text и изображение, должно быть, остается на этом тексте. С текстом у меня нет никакого типа проблемы. Проблема предстает передо мной с изображением. если я снимаю UnityEngine. UI лишает себя меня конфликта с изображением, но я не могу использовать UI текста. Сейчас, если я снимаю Vuforia там, если у меня нет конфликта с изображением, но я не работает чтение главного файла. Далее я оставляю ему код, чтобы видеть мне могут помогать, чтобы мочь работать два элемента без того, чтобы он послал мне сообщение неясных.

Спасибо.

Ошибка:

ошибка CS0104: Image' is an ambiguous reference between Vuforia. ImagВ and 'UnityEngine. UI.Image'

Код

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

using Vuforia;
using UnityEngine.UI;

using Mono.Data.Sqlite;
using System.Data;
using System;
using System.IO;

public class reproduccionAudio : MonoBehaviour, ITrackableEventHandler


{

 private TrackableBehaviour mTrackableBehaviour;

    //public AudioClip otherClip;
    private AudioSource audio;
    private AudioSource[] allAudioSources;
    public Text textoLibro;
    private SqliteConnection dbconn;
    private SqliteCommand dbcmd;
    private SqliteDataReader reader;
    private string conn;
    private string namedb = "usuario.bytes";
    public int nParrafo;
    public Image imgEscena;

        void Start()
        {
            //Traemos el valor del GameObject y lo acipnamos el audioSouce
            audio = GetComponent<AudioSource>();

            imgEscena = GameObject.Find ("Escenas").GetComponents<Image> ();

            mTrackableBehaviour = GetComponent<TrackableBehaviour>();
            if (mTrackableBehaviour)
            {
                mTrackableBehaviour.RegisterTrackableEventHandler(this);
            }

        }

        public void OnTrackableStateChanged( TrackableBehaviour.Status previousStatus, TrackableBehaviour.Status newStatus){


        /*
        if(audio.isPlaying ){
            audio.Stop ();
        }*/ 

        if (newStatus == TrackableBehaviour.Status.DETECTED ||
                  newStatus == TrackableBehaviour.Status.TRACKED ||
                  newStatus == TrackableBehaviour.Status.EXTENDED_TRACKED) {

            allAudioSources = FindObjectsOfType (typeof(AudioSource)) as AudioSource[];
            foreach (AudioSource audioS in allAudioSources){
                audioS.Stop ();
            }
            textoLibro.text = "";

            if (!audio.isPlaying) {
                audio.Play ();
            } 

            //Colocamos el texto de la naración en pantalla.
            getOpenDb();

            string sqlQuery = "Select * From textoLibros WHERE nParrafo = "+ nParrafo +" AND idusuario = 0";
            dbcmd = dbconn.CreateCommand();
            dbcmd.CommandText = sqlQuery;
            reader = dbcmd.ExecuteReader ();
            while(reader.Read()){
                string names = reader.GetString (2);
                textoLibro.text = names;

                //Debug.Log (" Nombre"+ names);
            }

            imgEscena.sprite = Resources.Load<Sprite> ("escenas-RA/EscenaRa-01");

            getCloseDb ();

        } 
      }

    //
    //  Creamos la conexion con la bd SQlite
    //
    public void getOpenDb(){

        if (Application.platform != RuntimePlatform.Android) {

            conn = Application.dataPath + "/StreamingAssets/" + namedb;

            if(!File.Exists(conn)){
                File.Create (conn);
            }

        } else {

            conn = Application.persistentDataPath + "/" + namedb;

            if (!File.Exists(conn))
            {
                // if it doesn't ->
                // open StreamingAssets directory and load the db ->
                WWW loadDB = new WWW("jar:file://" + Application.dataPath + "!/assets/" + namedb);  // this is the path to your StreamingAssets in android
                while (!loadDB.isDone) { }  // CAREFUL here, for safety reasons you shouldn't let this while loop unattended, place a timer and error check
                // then save to Application.persistentDataPath
                File.WriteAllBytes(conn, loadDB.bytes);
            }
        }

        dbconn = new SqliteConnection ("URI=file:" + conn);
        dbconn.Open ();

    }

    //
    //Cerramos la conexión Sqlite
    //
    public void getCloseDb(){

        reader.Close ();
        reader = null;
        dbcmd.Dispose ();
        dbcmd = null;
        dbconn.Close ();
        dbconn = null;

    }

   }
0
задан 20.03.2019, 22:11
1 ответ

Оба librerГ-схвати aГ±aden класс Image, что C# не знает в quГ© Image 2, ты относишься.

В этом случае tendrГЎs, что включать область имен в ней declaraciГіn:

public Vuforia.Image imgEscena;
1
ответ дан 02.12.2019, 05:21
  • 1
    Уже я решаюсь проблема declaració n переменной спасибо. сейчас мне произведена эта другая ошибка: ** (ошибка CS0029: Cannot implicitly convert type Vuforia.Image[]' to Vuforia. Image') ** в линии 'imgEscena = GameObject. Find (" Escenas").GetComponents< Vuforia. Image> ();'. – Yoel Rodriguez 20.03.2019, 22:44
  • 2
    Кажется, что он возвращает тебе array изображений, этот find, public Vuforia.Image[] imgEscena;, решит тебе проблему, но если ты нуждаешься только в изображении, ты был бы должен упорядочивать код, чтобы не приносить больше одной. – Francisco Garrido 20.03.2019, 22:49
  • 3
    Привет уже ему удайтесь решить все проблемы и у меня нет ошибки то, что последует за мной, состоит в том, что он не показывает мне изображение в сцене, когда я делаю lecutra – Yoel Rodriguez 21.03.2019, 01:43
  • 4
    Если оно последует за кем-то, má s и я ты комментирую то, что я sucedí в es, что sprite было в condició n прозрачности, что не показывало мне изображение, когда он загружает ее мне. Спасибо. – Yoel Rodriguez 21.03.2019, 23:51

Теги

Похожие вопросы