示例#1
0
        static void SetStyle(this EdgeObjectState state, UIView view)
        {
            switch (state.Property)
            {
            case EdgePropertyType.Opacity:
                view.Alpha = float.Parse(state.Value);
                return;

                ;

            case EdgePropertyType.Left:
            {
                var frame = view.Frame;
                frame.X    = StageParser.ParseFloat(state.Value);
                view.Frame = frame;
            }
                return;

            case EdgePropertyType.Top:
            {
                var frame = view.Frame;
                frame.Y    = StageParser.ParseFloat(state.Value);
                view.Frame = frame;
            }
                return;

            case EdgePropertyType.Width:
            {
                var frame = view.Frame;
                frame.Width = StageParser.ParseFloat(state.Value);
                view.Frame  = frame;
            }
                return;

            case EdgePropertyType.Height:
            {
                var frame = view.Frame;
                frame.Height = StageParser.ParseFloat(state.Value);
                view.Frame   = frame;
            }
                return;

            case EdgePropertyType.Display:
                view.Hidden = state.Value == "none";
                return;
            }
        }
示例#2
0
        public static Task <Stage> Load(string scriptName)
        {
            return(Task.Factory.StartNew(() => {
                var script = File.ReadAllText(scriptName);
                if (script.Contains("(  function($, Edge, compId){"))
                {
                    script = script.Replace("(  function($, Edge, compId){", "");
                }
                var endIndex = script.IndexOf("Edge.registerC");
                if (endIndex > 0)
                {
                    script = script.Substring(0, endIndex);
                }
                script += Environment.NewLine + "var js = JSON.stringify(symbols);";
                var context = new JSContext();
                var test = context.EvaluateScript(script);

                var result = context[(NSString)"js"].ToString();
                result = result.Replace("\"${_", "\"").Replace("}\"", "\"");
                var stage = StageParser.Parse(result);
                return stage;
            }));
        }