Sapui5 无法切换ui5按钮
当我点击按钮时,图标没有改变,有什么建议我可能在这里做错了什么吗?当您使用:Sapui5 无法切换ui5按钮,sapui5,Sapui5,当我点击按钮时,图标没有改变,有什么建议我可能在这里做错了什么吗?当您使用: new sap.m.Button("manualimage",{ icon : 'resources/Green.JPG', width : "40px", height : "40px", press :function(e) { var myBtn
new sap.m.Button("manualimage",{
icon : 'resources/Green.JPG',
width : "40px",
height : "40px",
press :function(e) {
var myBtn = sap.ui.getCore().byId("manualimage");
console.log(document.getElementById("manualimage").icon);
myBtn.setIcon('');
}
})
您的var myBtn未定义,因为使用button的sap.ui.getCore()id需要类似以下内容:
var myBtn = sap.ui.getCore().byId("manualimage");
其中_xmlview1--由框架自动生成。因此,请使用以下代码:
sap.ui.getCore().byId("__xmlview1--manualimage");
下面是我正在工作的代码(在UI5版本1.42上)。 我只发现一个错误:您应该使用ToggleButton来保持按钮的状态。按下时说出移除图像,或按下时将图像设置回原位(即未按下) XML代码:
var myBtn = this.byId("manualimage");
让我知道这是否适合你 当您使用XML视图或控制器的createId方法时,将使用this.byId。请在下面的链接中查看我的回复:谢谢Jaro,这里不是这样。f{bAllowTextSelection:true,meventergistry:Object,sId:“manualimage”,mproperty:d,mAggregations:Object…}我尝试在控制台中打印myBtn并得到上面的输出,所以myBtn得到了它应该得到的输入。我认为myBtn.setIcon(“”)工作不正常。@Armoghnabbas:你是说它没有在单击时切换图像,还是说它没有在第一次单击后删除图像?@Rahul:它甚至在多次单击后也没有做任何事情clicks@ArmoghanAbbas很高兴我能帮忙。将问题标记为已回答,请:)
<ToggleButton icon='./images/ICICI.png' text ='hey' pressed='false' press='handlePress' />
handlePress: function(evt) {
var oSource = evt.getSource()
var bPressed = oSource.getPressed();
if(bPressed) {
oSource.setIcon('');
} else {
oSource.setIcon('./images/ICICI.png');
}
}