先附上git地址
https://github.com/huqiang0204/huqiang.UnitySubThreadUI
可以在面板中快捷创建调色板,右键菜单->UIComposite-UIPalette
public Action
public Action
class View
{
public Paint draw;//使用RawImage反射一个绘图板
public UIPalette Palette;
public RawImageElement color;
public TextElement tip;
public UISlider sizeS;
public EventCallBack mod0;
public EventCallBack mod1;
public EventCallBack mod2;
}
View view;
public override void Initial(ModelElement parent, object dat = null)
{
model = ModelManagerUI.CloneModel("baseUI", "drawing");
base.Initial(parent, dat);
view = model.ComponentReflection
view.Palette.TemplateChanged = view.Palette.ColorChanged = (o) => {
view.draw.BrushColor = o.SelectColor;
view.color.color = o.SelectColor;
};
view.sizeS.OnValueChanged = (o) => {
float a = o.Percentage * 78;
a+=2;
view.draw.BrushSize = a;
view.tip.text = "画笔尺寸:"+a.ToString();
};
view.mod0.Click = (o, e) => { view.draw.drawModel = Paint.DrawModel.Brush; };
view.mod1.Click = (o, e) => { view.draw.drawModel = Paint.DrawModel.Scale; };
view.mod2.Click = (o, e) => { view.draw.drawModel = Paint.DrawModel.Rotate; };
}
绘图板还可注册多点触控事件,进行旋转和缩放,事件系统后面再做介绍
效果如下