2016-09-14 2 views
0

툴바에 새 Button을 동적으로 추가하려고하지만 툴바 컨트롤의 addContent를 호출하지 못했습니다. UI5 controljQuery object과 같은 특별한 유형입니까? 어떻게 액세스 할 수 있습니까? UI5 컨트롤을 얻는 방법?

내 코드 :

$("footer").control().addContent(new sap.m.Button({ 
    text: "Disconnect" 
})) 

jsbin (. jsbin에서 내가 JSView 제어를 초기화하는 데 사용하지만, 현실에서, 내가 대신 XMLView을 사용 그리고 내 컨트롤러에 addContent를 호출)

참조 : http://scn.sap.com/thread/3538452 https://sapui5.netweaver.ondemand.com/#docs/api/symbols/sap.m.Toolbar.html#addContent

답변

3

SAPUI5 컨트롤에서 호출 할 메서드이기 때문에 addContentDOM 요소에 호출 할 수 없습니다. 이 같은 id의와

는 컨트롤러에서 동적으로 액세스 Toolbar을 내용을 추가하려면 기능 버튼으로 호출하고,

this.getView().byId("toolbarId").addContent(new sap.m.Button({ 
    text: "Disconnect" 
})); 
+0

어떤 경우를'this' 범위가 변경? byId ("__ xmlview0"). byId ("toolbarId")'not work ... – Tina

+0

'press' 이벤트 핸들러에서 함수를 호출하면'this'가 변경되지 않습니다. 다른 어떤 경우에도 'this'가 변경되었다고해도 'sap.ui.getCore(). byId ("toolbarId")'를 사용하여 항상 컨트롤에 액세스 할 수 있으며, 이는'sap.ui.getCore(). byId ('__ xmlview0 ') .byId ("toolbarId") 부정확합니다. 'sap.ui '의'API'에서 [byId()] (https://sapui5.netweaver.ondemand.com/#docs/api/symbols/sap.ui.core.Core.html#byId) . 코어. 코어' – Dopedev

+0

고마워, 작동 ~ – Tina