1

我是 Oracle 移动应用程序框架的新手。单击任何链接或按钮时如何更改不同的背景颜色。例如,我有 3 个蓝色、绿色和红色按钮。如果我点击蓝色,我想要全身的蓝色背景,如果我点击红色,我想要全身的红色背景。像这样我怎么能在 AMX 文件中做到这一点。

<?xml version="1.0" encoding="UTF-8" ?>
<amx:view xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:amx="http://xmlns.oracle.com/adf/mf/amx"
          xmlns:dvtm="http://xmlns.oracle.com/adf/mf/amx/dvt">
  <amx:panelPage id="pp1">
    <amx:facet name="header">
      <amx:outputText value="Header" id="ot1"/>
    </amx:facet>
    <amx:panelStretchLayout>
      <amx:facet name="top">
        <amx:selectOneButton  id="sob1">
          <amx:selectItem label="One" id="si1"/>
          <amx:selectItem label="Two" id="si2" value="adfmf-panelPage-alternateColor"/>
          <amx:selectItem label="Three" id="si3" value="adfmf-panelPage-springboard"/>
        </amx:selectOneButton>
      </amx:facet>
      <amx:facet name="center">
      <amx:commandButton text="click" id="cb1">
          <amx:showPopupBehavior id="spb1" type="action" align="overlapBottomCenter" decoration="simple" alignId="pp1"
                                 popupId="p1"/>
        </amx:commandButton>
      </amx:facet>
      <amx:facet name="bottom"/>
    </amx:panelStretchLayout>    
  </amx:panelPage>
  <amx:popup id="p1" animation="slideUp" autoDismiss="true" backgroundDimming="off"
             inlineStyle="background-color:#b5e7ff; height:50%; width:60%;">
    <amx:outputText value="Popup is open" id="ot2"/>
  </amx:popup>
</amx:view>

在这里,那里有选定的项目。在这三个中我该如何做各种背景。

以及如何在 AMX 中引用 css 文件。意味着,在普通 HTML 中,我们给出的 head 部分是这样的。在 AMX 页面中如何引用 css 文件。

4

1 回答 1

0

有几种方法可以实现您的目标

步骤1

setPropertyListener在您的第一个按钮中添加一个

 <amx:setPropertyListener id="spl1" from="blue"
                                             to="#{pageFlowScope.changeColor}" type="action"/>

根据颜色将其添加到您的按钮(在您的情况下为蓝色、绿色和红色)

第2步

为with 条件设置一个inline属性amx:panelPage

#{pageFlowScope.changeColor eq 'blue' ? 'background-color:blue' : (pageFlowScope.changeColor eq 'red' ? 'background-color:red' : (pageFlowScope.changeColor eq 'green' ? 'background-color:green' : ''))}
于 2016-08-10T14:00:02.453 回答