繁体   English   中英

基本Xamarin.iOS屏幕操作

[英]Basic Xamarin.iOS Screen Manipulation

我是Xamarin.iOS编程的新手,如果这很明显,请原谅我。

我有一个在主应用程序中运行的计时器。 除其他外,我需要它来更新Main.storyboard中的字段

在Main.cs中:

public static void StartTimer()
{
    DateTime startTime;
    startTime = DateTime.UtcNow;
    var dispatcherTimer = new System.Threading.Timer(DispatcherTimer_Tick, startTime, 0, 100);
}

public static void DispatcherTimer_Tick(object state)
{
    GetTime();
    ViewController.SetFieldsTick(Vars.dcounter));
}

在ViewController中,我有一个例程来更新屏幕:

public static  void SetFieldsTick(int tick)
{
    switch (tick)
    {
        case 0:     // Display the Time data
        {
            UTC_Data.Text = Vars.DateStrZ;
       }
    }
}

如果我将SetFieldsTick声明为static,那么我会收到消息

非静态字段需要对象引用…

对于我要更新的每个标签。

如果我未将其声明为静态,则它可以引用标签,但是在Main.cs文件中调用它时会收到相同的错误消息。

有关如何解决此问题的任何建议?

谢谢,丹

我想ViewController不是静态的,这就是为什么您不能像这样调用它的原因,无论如何,您的代码还是有点难以理解,如果您想用时钟来构建应用程序或只显示时间,请看一下Xamarin.Forms示例:

https://docs.microsoft.com/zh-cn/xamarin/xamarin-forms/xaml/xaml-basics/data-bindings-to-mvvm

由于有了DataBinding,您无需手动设置UI,您应该尝试一下。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM