2013-07-19 3 views
2

Я использую BlackBerry-10 Cascades для разработки приложения. Я хочу, чтобы контекстное меню открывалось справа, когда я нажимаю кнопку. В настоящее время у меня есть так, что меню открывается после нажатия кнопки, но мне нужно, чтобы он был открыт, как только кнопка нажата. Я пробовал найти способ сделать это, но не могу найти его в документации. Есть ли способ вызвать контекстное меню из onclicked метода нажатия кнопки?Контекстное меню Blackberry Cascades From Button Нажмите

BTW: это все в QML

+0

Можете ли вы вставить код, который вы используете, чтобы открыть контекстное меню нажатием клавиши? – hyarion

ответ

0

Я не очень знаком с контролем, доступных на ежевика-каскадами, но, кажется, что это должно быть так же просто, как перемещение кода из onPressAndHold обработчика сигнала к onClicked обработчик сигнала. Для лучшей помощи вы должны опубликовать соответствующие фрагменты кода вместе с импортом, чтобы мы могли найти дополнительную информацию, которая поможет вам в вашем конкретном сценарии.

0
actions: [ 
     //! [0] 
     ActionItem { 
      title: _webMaps.viewModeTitle 
      imageSource: "asset:///images/map.png" 
      ActionBar.placement: ActionBarPlacement.OnBar 
      onTriggered: { 
       _webMaps.nextViewMode() 
       map.setMapType(_webMaps.viewMode); 
      } 
     }, 
     //! [0] 
     ActionItem { 
      title: qsTr("Waterloo") 
      imageSource: "asset:///images/pin.png" 
      ActionBar.placement: ActionBarPlacement.InOverflow 
      onTriggered: { 
       map.setCenter(43.468245, -80.519603); 
      } 
     } 
    ] 

попробовать этот образец ..

0

В теории вы должны быть в состоянии сделать это, но есть две проблемы, которые я вижу с этой идеей:

  1. контекстное меню, как предполагается, размещенном в контексте другого элемента пользовательского интерфейса. Я не уверен, какие элементы контекстного меню вы можете использовать для кнопки. Если вы отправляете контекстное меню в контексте какого-либо другого элемента управления, вы будете путать своих пользователей.
  2. Возрастная проблема несоответствия руководству стиля интерфейса UI. Вы будете ожидать ваших целей, которые вложили время в изучение того, как управлять интерфейсом BB10, чтобы теперь изучить другой набор семантики интерфейса.
0

Существует контекстное меню api в библиотеке BlackBerry Platform Services (BPS), которую вы можете использовать.

https://developer.blackberry.com/native/reference/core/com.qnx.doc.bps.lib_ref/topic/manual/dialog.h_functionscontextmenufunctions.html?f=dialog

Это не «функциональные Каскады» сами по себе, но вы можете использовать его из приложения каскады. Обратите внимание, что это api на основе C, поэтому вам нужно будет создать какой-то «вспомогательный класс» и разоблачить его непосредственно в QML.

0

Попробуйте this sample code для контекстного меню контекстного меню при нажатии кнопки.