public virtual void Draw(SpriteBatch spriteBatch) { Vector2 tStrSize = new Vector2(); foreach (var UII in uiItems) { if (UII.Visible) { UII.Draw(spriteBatch, Position + tStrSize); } switch (uIAlignment) { case Toolbox.UIAlignment.Vertical: switch (UII.UIIType) { case Toolbox.UIItemType.ImageText: tStrSize += new Vector2( 0, ToT.Fonts[UII.Font.ToString()].MeasureString(UII.DisplayText).Y + ToT.Textures[UII.ImageName].Height ); break; default: tStrSize += new Vector2( 0, ToT.Fonts[UII.Font.ToString()].MeasureString(UII.DisplayText).Y ); break; } break; case Toolbox.UIAlignment.Horizontal: switch (UII.UIIType) { case Toolbox.UIItemType.ImageText: tStrSize += new Vector2( ToT.Fonts[UII.Font.ToString()].MeasureString(UII.DisplayText).X + ToT.Textures[UII.ImageName].Width, 0 ); break; default: tStrSize += new Vector2( ToT.Fonts[UII.Font.ToString()].MeasureString(UII.DisplayText).X, 0 ); break; } break; } } }
public void RefreshUISize(bool refreshRectangle = true) { int fX = 0; int fY = 0; float currX = 0; float currY = 0; Vector2 vUIISize; switch (uIAlignment) { case Toolbox.UIAlignment.Vertical: foreach (var UII in uiItems) { if (UII.Visible) { vUIISize = UII.GetSize(); UII.UpdateSpecs(Position, new Vector2(currX, currY), vUIISize); if (fX < vUIISize.X) { fX = (int)vUIISize.X; } fY += (int)vUIISize.Y; currY += vUIISize.Y; } } break; case Toolbox.UIAlignment.Horizontal: foreach (var UII in uiItems) { if (UII.Visible) { vUIISize = UII.GetSize(); UII.UpdateSpecs(Position, new Vector2(currX, currY), vUIISize); fX += (int)vUIISize.X; if (fY < (int)vUIISize.Y) { fY = (int)vUIISize.Y; } currX += vUIISize.Y; } } break; } Size = new Vector2(fX, fY); if (refreshRectangle) { RefreshRectangle(); } }
public void onTagInventory(UII uii, InterrogatorModelDs.UmdFrequencyPoint frequencyPoint, Integer antennaId, InterrogatorModelDs.UmdRssi rssi) { accompainimentsHandler.Post(accompainimentRunnable); try { var hex = GetHexUII(uii.Epc.GetBytes()); if (!hex.Equals("null")) { worker.StopInventory(); MessagingCenter.Send <D2ReadActivity, TagResponse>(this, "tag", new TagResponse { CanTakeTag = true, Tag = hex, FromD2 = true }); Finish(); } } catch (System.Exception) { } //在列表展示uii+.... }