【问题标题】:iPhone: Drag to make a new objectiPhone:拖动以创建新对象
【发布时间】:2012-03-31 07:29:06
【问题描述】:

我正在制作一个 iPad 应用程序,它将在菜单区域的屏幕上显示一些对象。我希望用户能够从其中一个对象中触摸并拖动,以在视图上放置该对象的新副本。

为了进一步解释,假设我在“游戏片段”/菜单区域的 UIView 一侧有一个跳棋芯片。我希望用户触地并从该棋盘拖动以将新棋盘拖动到游戏板上。我不希望原始检查器移动,它只是一个占位符,但我想创建一个从第一个检查器拖动的新对象。

我看到了几种方法可以做到这一点,但是如果用户不拿起手指重新选择新的游戏片段,我无法弄清楚如何做到这一点。我希望在触摸第一个占位符对象后立即拖动新部件。

有什么想法吗?请并感谢您的帮助。

【问题讨论】:

  • 您总是可以在彼此的顶部拥有两个视图副本。当最上面的一个被拖走时(你知道在 touchesMoved 上:)你只需创建第三个(在原来的位置上创建在原来的位置下面或上面)
  • 如果你正在寻找拖动代码,它在这里:stackoverflow.com/questions/4982277/uiview-drag-image-and-text/…

标签: iphone objective-c ios ipad uigesturerecognizer


【解决方案1】:

我之前通过创建我希望移动的UIView 的副本解决了这个问题,然后使用UIResponder API(touchesBegan 等)根据拖动手势翻译,从而将原来的“菜单”视图留在原地。这有意义吗?

当您创建可移动副本时,您可以设置它的 alpha 或创建边框或其他一些视觉效果来指示拖动对象的临时性质。

【讨论】:

  • 谢谢你我要去试试。我会让你知道它是怎么回事:)
  • 代码很多;很难发布比骨架答案更多的内容。
  • 我决定做一些复杂的事情。 :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-09-17
相关资源
最近更新 更多