mm的入口元素:带MonoTouch.Dialog的ss?

时间:2012-11-02 03:54:48

标签: xamarin.ios monotouch.dialog

我正在尝试使用MonoTouch和MonoTouch.Dialog,并且想知道仅在几分钟和几秒内创建Time条目元素的最佳方法。 TimeElement似乎只支持小时和分钟。

我对整个框架都很陌生,所以我想知道是否有办法创建一个带有“##:##”掩码的文本输入元素,并使用数字小键盘填充分钟和秒?

更酷的选择是使用一个部分,用户可以将视图带到两个“Picker Views”(旋转轮)几分钟和几秒钟,但我还没有。

提前致谢

1 个答案:

答案 0 :(得分:1)

MonoTouch.Dialog的源代码可在Github上获得(https://github.com/migueldeicaza/MonoTouch.Dialog/tree/master/MonoTouch.Dialog)。

在那里,看一下 DateElement 的实现(https://github.com/migueldeicaza/MonoTouch.Dialog/blob/master/MonoTouch.Dialog/Elements.cs#L1827)

为了得到TimeElementMinutesSeconds,您所要做的就是(未经测试)滥用倒计时模式。它将提供小时和分钟,但您可以将它们解释为分钟和秒:

public class TimeElementMinutesSeconds : DateTimeElement {
        public TimeElementMinutesSeconds (string caption, DateTime date) : base (caption, date)
        {
        }

        public override string FormatDate (DateTime dt)
        {
            DateTime dtLocal = GetDateWithKind (dt).ToLocalTime ();
return string.Format("{0:##}:{1:##}"dtLocal.Hours, dtLocal.Minutes);
        }

        public override UIDatePicker CreatePicker ()
        {
            var picker = base.CreatePicker ();
            picker.Mode = UIDatePickerMode.CountDownTimer;
            return picker;
        }
    }

如果这不能让你足够接近,你可以创建自己的选择器并返回它。