如何将 NIB 文件中的对象发送到前/后?

如何调整 Xcode 综合 Interface Builder 内物体的「 z 」位置(例如发送 UIImageView至前/后) ?

70228 次浏览

Found it: Click on the object you want to move and in the menubar, select Editor > Arrangement

Also, click on the triangle (open) at the bottom of the column showing the view/objects/placeholder/window. Then you have the full hierarchy of objects, like from IB, and can rearrange by dragging.

Just to give a clean, up-to-date answer to this:

  1. Select an interface object, then "Editor | Arrange | Send to back/front/etc", OR

  2. Select the window object, then click on 'Window' above the interface editor and select the objects it contains

    • This pic shows where to click: enter image description here
  3. Or you can expand the object browser, use the disclosure triangle on the window object, and select from the list there: http://i.imgur.com/041xz.png

  4. If the option to send to front/back is greyed out, try double-clicking the object to select it.

    • Thanks to Bryce Thomas for this suggestion in the comments
  5. Alternatively, the objects are listed from back to front in the order that they appear in the object browser list.

    • Drag an object in the list to the last slot in the list to bring it to the front, for example.

Click on the item you want to send back. From the top menus choose: Editor -> Arrange -> Send to back/front.

I know originally, this question was for Xcode 4, but it is linked from a Google search.

In Xcode 5, 6, and 7, you can still go to the Editor menu and select and move the items around.

Image of Editor Menu

But you can also rearrange by simply changing the order in the document outline.

Example of UI Items in a UIView

They're in reverse z-index order: the top of the list is the back of the stack, the bottom of the list is the front. Simply drag your UI item to the bottom to bring it to the front.

You can also drag and drop view items in the left menu to change the order. The z-order matches the order of the items in the menu.