2013-05-06 3 views
0

У меня два NSButtons. Обе кнопки были с изображениями. Это то, что я создал [кнопки] (http://i.stack.imgur.com/IYXIE.png), проблема заключается в том, что кнопка «звезда» всегда находится за кнопкой «Лист». как я могу принести его спереди. (Поиск Mac OSX не IOS.)
UPDATE: это то, что я получил во время первого MouseHover enter image description here, получил это во второй мыши над enter image description hereКак сделать NSButton над NSButton?

+0

В вашем СИБ файл просто удалить кнопку звезда из иерархии просмотра и добавить его –

+0

звезда кнопку еще раз, расположенную выше кнопка листа ... я удалил и добавил кнопку «звезда». после того, как я столкнулся с этой проблемой. – user23790

ответ

1

Вы можете использовать bringSubviewToFront, чтобы заставить вид появляются «сверху» другого вид:

[parentView bringSubviewToFront:view]; 

Если вы хотите изменить порядок взглядов в дизайнере раскадровке, просто перетащить вид вы хотите на вершине ниже другого вида в левом меню. Самый верхний вид всегда тот, который отображается последним в списке.

Storyboard

+0

извините за его поддержку только в iOS ... я за MAC – user23790

+0

я пробовал ... первый раз наведите курсор мыши, кнопка звезды появляется над кнопкой листа, после второго наведения мыши отправляется обратно .... – user23790

0

Это сделает

[parentView bringSubviewToFront:leafButton]; 
[parentView bringSubviewToFront:starButton]; 
+0

жаль, что он поддерживается только в iOS ... я ищу Mac – user23790

2
[starButton removeFromSuperview]; 
[self addSubview:starButton positioned:NSWindowAbove relativeTo:nil]; 

Кроме того, NSView поддерживает метод

sortSubviewsUsingFunction:context: 

Реализовать что просто сортировать мнение .. требует больше коды, но кажется более чистый.

1

Вместо звезды я использую A и Apple вместо Оставить.

Вы делаете так: enter image description here

Вы должны изменить кнопки место, как:

enter image description here

кнопку A Принесите после Apple.

тогда вы увидите согласно вашему требованию.

enter image description here

+0

уже у меня такое ... я подклассифицировал эти две кнопки. при первом наведении мыши он появляется правильно, и при втором наведении мыши он (например, кнопка A) ушел за кнопку Apple. – user23790

+0

Если это кнопки, то их заказ не может быть изменен с помощью мыши. Можете ли вы сказать, какие кнопки вы используете. –

+0

* Звездная кнопка: стиль-квадрат, тип-мгновенное изменение и * кнопка листа: стиль-Bevel, type - мгновенный толчок – user23790

0

Довести подвид на фронт MacOS, сделайте следующее:

NSView *superView = myObject.superview; 
[myObject removeFromSuperview]; 
[superView addSubview:myObject]; // brings to the front