我正在尝试在Unity中制作数字时钟。这行代码中的文字
private Text text;
给我错误CS1061:类型'对象不包含'text'的定义,并且找不到类型为'object'的扩展方法'text'。你错过了装配参考吗?
我试过了
public Text text;
和using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using System;
public class ClockDigital : MonoBehaviour {
private object textClock;
public class Clock : MonoBehaviour
{
private Text textClock;
private void Start()
{
textClock = GetComponent<Text>();
}
}
private void Update()
{
DateTime time = DateTime.Now;
string hour = LeadingZero(time.Hour);
string minute = LeadingZero(time.Minute);
string second = LeadingZero(time.Second);
textClock.text = hour + ":" + minute + ":" + second;
}
string LeadingZero (int n)
{
return n.ToString().PadLeft(2, '0');
}
}
因为我认为我需要申报,但事实并非如此。我错过了什么?
我已经包含了以下所有代码,以备不时之需。感谢您抽出宝贵时间阅读并回答我的问题。
zeroFuel
答案 0 :(得分:0)
错误CS1061:类型'对象不包含'text'的定义,并且找不到类型为'object'的扩展方法'text'。你错过了装配参考吗?
这里的第一个线索是Type 'object'
。这意味着您正在引用一个Object,基础Object类没有.text
属性。
将private object textClock;
声明更改为private Text textClock;
。你的代码中都有这两个,尽管你的嵌套类声明闻起来很糟糕。只需确保每个声明都是private Text
。