/** * タッチイベント処理 * リストの末尾(手前に表示されている)から順に処理する * @param vt * @return true:再描画 */ public bool touchEvent(ViewTouch vt, out UDrawable hoverObj) { UDrawManager manager = UDrawManager.getInstance(); bool ret = false; bool isHover; hoverObj = null; // 手前に表示されたものから処理したいのでリストを逆順で処理する list.Reverse(); foreach (UDrawable obj in list) { if (!obj.isShow) { continue; } PointF offset = obj.getDrawOffset(); if (obj.touchEvent(vt, offset, out isHover)) { if (isHover) { hoverObj = obj; } ret = true; break; } } list.Reverse(); // 逆順を元に戻す return(ret); }
/** * DrawManageのリストから削除する */ public void removeFromDrawManager() { UDrawManager.getInstance().removeDrawable(this); }
/** * DrawManagerの描画リストに追加する */ public void addToDrawManager() { UDrawManager.getInstance().addDrawable(this); }
/** * 後処理。nullを設定する前に呼ぶ */ public void cleanUp() { UDrawManager.getInstance().removeDrawable(this); }