How to add multiple control inside the content of sap.m.TileContent?












0















Below code is working fine for single control inside sap.m.TileContent



var oTile = new sap.m.GenericTile({
header: oData.results[i].Name,
subheader: oData.results[i].ModuleName,
size: "Auto",
frameType: "OneByOne",
press: [that.handleTilePress, that],
tileContent: [new sap.m.TileContent({
size: "Auto",
footer: oData.results[i].Num.toLocaleString() + " views",
content: [new sap.m.NumericContent({
size: "Auto",
nullifyValue: false,
icon: "sap-icon://"+oData.results[i].tileIcon
})]
})]
});


But when I tried to add one more control to sap.m.TileContent, let's say sap.m.Label inside sap.m.TileContent as below,



var oTile = new sap.m.GenericTile({
header: oData.results[i].Name,
subheader: oData.results[i].ModuleName,
size: "Auto",
frameType: "OneByOne",
press: [that.handleTilePress, that],
tileContent: [new sap.m.TileContent({
size: "Auto",
footer: oData.results[i].Num.toLocaleString() + " views",
content: [new sap.m.NumericContent({
size: "Auto",
nullifyValue: false,
icon: "sap-icon://"+oData.results[i].tileIcon
}),
new sap.m.Label({text:"dummyText"})]
})]
})


It's giving me an error as "Tried to add an array of controls to a single aggregation" (Single control inside the content is working fine i.e. either the label or the numeric content)



I am looking for any other alternative except 'content' to add multiple controls or any way to add multiple control inside content without developing the custom control. How to solve this?



PS: I want to add sap.m.RatingIndicator to the tile so that I can implement the favourite functionality.










share|improve this question





























    0















    Below code is working fine for single control inside sap.m.TileContent



    var oTile = new sap.m.GenericTile({
    header: oData.results[i].Name,
    subheader: oData.results[i].ModuleName,
    size: "Auto",
    frameType: "OneByOne",
    press: [that.handleTilePress, that],
    tileContent: [new sap.m.TileContent({
    size: "Auto",
    footer: oData.results[i].Num.toLocaleString() + " views",
    content: [new sap.m.NumericContent({
    size: "Auto",
    nullifyValue: false,
    icon: "sap-icon://"+oData.results[i].tileIcon
    })]
    })]
    });


    But when I tried to add one more control to sap.m.TileContent, let's say sap.m.Label inside sap.m.TileContent as below,



    var oTile = new sap.m.GenericTile({
    header: oData.results[i].Name,
    subheader: oData.results[i].ModuleName,
    size: "Auto",
    frameType: "OneByOne",
    press: [that.handleTilePress, that],
    tileContent: [new sap.m.TileContent({
    size: "Auto",
    footer: oData.results[i].Num.toLocaleString() + " views",
    content: [new sap.m.NumericContent({
    size: "Auto",
    nullifyValue: false,
    icon: "sap-icon://"+oData.results[i].tileIcon
    }),
    new sap.m.Label({text:"dummyText"})]
    })]
    })


    It's giving me an error as "Tried to add an array of controls to a single aggregation" (Single control inside the content is working fine i.e. either the label or the numeric content)



    I am looking for any other alternative except 'content' to add multiple controls or any way to add multiple control inside content without developing the custom control. How to solve this?



    PS: I want to add sap.m.RatingIndicator to the tile so that I can implement the favourite functionality.










    share|improve this question



























      0












      0








      0








      Below code is working fine for single control inside sap.m.TileContent



      var oTile = new sap.m.GenericTile({
      header: oData.results[i].Name,
      subheader: oData.results[i].ModuleName,
      size: "Auto",
      frameType: "OneByOne",
      press: [that.handleTilePress, that],
      tileContent: [new sap.m.TileContent({
      size: "Auto",
      footer: oData.results[i].Num.toLocaleString() + " views",
      content: [new sap.m.NumericContent({
      size: "Auto",
      nullifyValue: false,
      icon: "sap-icon://"+oData.results[i].tileIcon
      })]
      })]
      });


      But when I tried to add one more control to sap.m.TileContent, let's say sap.m.Label inside sap.m.TileContent as below,



      var oTile = new sap.m.GenericTile({
      header: oData.results[i].Name,
      subheader: oData.results[i].ModuleName,
      size: "Auto",
      frameType: "OneByOne",
      press: [that.handleTilePress, that],
      tileContent: [new sap.m.TileContent({
      size: "Auto",
      footer: oData.results[i].Num.toLocaleString() + " views",
      content: [new sap.m.NumericContent({
      size: "Auto",
      nullifyValue: false,
      icon: "sap-icon://"+oData.results[i].tileIcon
      }),
      new sap.m.Label({text:"dummyText"})]
      })]
      })


      It's giving me an error as "Tried to add an array of controls to a single aggregation" (Single control inside the content is working fine i.e. either the label or the numeric content)



      I am looking for any other alternative except 'content' to add multiple controls or any way to add multiple control inside content without developing the custom control. How to solve this?



      PS: I want to add sap.m.RatingIndicator to the tile so that I can implement the favourite functionality.










      share|improve this question
















      Below code is working fine for single control inside sap.m.TileContent



      var oTile = new sap.m.GenericTile({
      header: oData.results[i].Name,
      subheader: oData.results[i].ModuleName,
      size: "Auto",
      frameType: "OneByOne",
      press: [that.handleTilePress, that],
      tileContent: [new sap.m.TileContent({
      size: "Auto",
      footer: oData.results[i].Num.toLocaleString() + " views",
      content: [new sap.m.NumericContent({
      size: "Auto",
      nullifyValue: false,
      icon: "sap-icon://"+oData.results[i].tileIcon
      })]
      })]
      });


      But when I tried to add one more control to sap.m.TileContent, let's say sap.m.Label inside sap.m.TileContent as below,



      var oTile = new sap.m.GenericTile({
      header: oData.results[i].Name,
      subheader: oData.results[i].ModuleName,
      size: "Auto",
      frameType: "OneByOne",
      press: [that.handleTilePress, that],
      tileContent: [new sap.m.TileContent({
      size: "Auto",
      footer: oData.results[i].Num.toLocaleString() + " views",
      content: [new sap.m.NumericContent({
      size: "Auto",
      nullifyValue: false,
      icon: "sap-icon://"+oData.results[i].tileIcon
      }),
      new sap.m.Label({text:"dummyText"})]
      })]
      })


      It's giving me an error as "Tried to add an array of controls to a single aggregation" (Single control inside the content is working fine i.e. either the label or the numeric content)



      I am looking for any other alternative except 'content' to add multiple controls or any way to add multiple control inside content without developing the custom control. How to solve this?



      PS: I want to add sap.m.RatingIndicator to the tile so that I can implement the favourite functionality.







      sapui5






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 21 '18 at 7:18







      Parth Patel

















      asked Nov 20 '18 at 14:06









      Parth PatelParth Patel

      4011




      4011
























          1 Answer
          1






          active

          oldest

          votes


















          2














          This is happening because content in sap.m.TileContent aggregations has the cardinality of 0..1 where 0 is the minimum cardinality, and 1 is the maximum cardinality. This means you can only have a single item inside the content property.



          Following the Fiori Design Guidelines for Rating Indicator you should only use this element in forms, tables or in a dialog box. With that said, it will still work if you insert it into sap.m.TileContent like this:



          <GenericTile header="Cumulative Totals" subheader="Expenses">
          <TileContent unit="Unit" footer="Footer Text">
          <content>
          <RatingIndicator id="RI_default" maxValue="5" value="4" tooltip="Rating Tooltip"/>
          </content><!-- sap.ui.core.Control -->
          </TileContent>
          </GenericTile>


          If you want to add other text in the tile I would suggest you use the footer and/or unit properties in sap.m.TileContent just like in my example above.



          EDIT:



          You can workaround the cardinality of the sap.m.TileContent aggregations by inserting a sap.m.VBox element inside your sap.m.TileContent and insert multiple elements there although I really would advise you not to do it!



          Example:



          <GenericTile header="Cumulative Totals" subheader="Expenses">
          <TileContent unit="Unit" footer="Footer Text">
          <content>
          <VBox>
          <RatingIndicator id="RI_default" maxValue="5" value="4"/>
          <Label text="Dummy"/>
          </VBox>
          </content>
          </TileContent>
          </GenericTile>


          Hope that helps!






          share|improve this answer

























            Your Answer






            StackExchange.ifUsing("editor", function () {
            StackExchange.using("externalEditor", function () {
            StackExchange.using("snippets", function () {
            StackExchange.snippets.init();
            });
            });
            }, "code-snippets");

            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "1"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53394804%2fhow-to-add-multiple-control-inside-the-content-of-sap-m-tilecontent%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            2














            This is happening because content in sap.m.TileContent aggregations has the cardinality of 0..1 where 0 is the minimum cardinality, and 1 is the maximum cardinality. This means you can only have a single item inside the content property.



            Following the Fiori Design Guidelines for Rating Indicator you should only use this element in forms, tables or in a dialog box. With that said, it will still work if you insert it into sap.m.TileContent like this:



            <GenericTile header="Cumulative Totals" subheader="Expenses">
            <TileContent unit="Unit" footer="Footer Text">
            <content>
            <RatingIndicator id="RI_default" maxValue="5" value="4" tooltip="Rating Tooltip"/>
            </content><!-- sap.ui.core.Control -->
            </TileContent>
            </GenericTile>


            If you want to add other text in the tile I would suggest you use the footer and/or unit properties in sap.m.TileContent just like in my example above.



            EDIT:



            You can workaround the cardinality of the sap.m.TileContent aggregations by inserting a sap.m.VBox element inside your sap.m.TileContent and insert multiple elements there although I really would advise you not to do it!



            Example:



            <GenericTile header="Cumulative Totals" subheader="Expenses">
            <TileContent unit="Unit" footer="Footer Text">
            <content>
            <VBox>
            <RatingIndicator id="RI_default" maxValue="5" value="4"/>
            <Label text="Dummy"/>
            </VBox>
            </content>
            </TileContent>
            </GenericTile>


            Hope that helps!






            share|improve this answer






























              2














              This is happening because content in sap.m.TileContent aggregations has the cardinality of 0..1 where 0 is the minimum cardinality, and 1 is the maximum cardinality. This means you can only have a single item inside the content property.



              Following the Fiori Design Guidelines for Rating Indicator you should only use this element in forms, tables or in a dialog box. With that said, it will still work if you insert it into sap.m.TileContent like this:



              <GenericTile header="Cumulative Totals" subheader="Expenses">
              <TileContent unit="Unit" footer="Footer Text">
              <content>
              <RatingIndicator id="RI_default" maxValue="5" value="4" tooltip="Rating Tooltip"/>
              </content><!-- sap.ui.core.Control -->
              </TileContent>
              </GenericTile>


              If you want to add other text in the tile I would suggest you use the footer and/or unit properties in sap.m.TileContent just like in my example above.



              EDIT:



              You can workaround the cardinality of the sap.m.TileContent aggregations by inserting a sap.m.VBox element inside your sap.m.TileContent and insert multiple elements there although I really would advise you not to do it!



              Example:



              <GenericTile header="Cumulative Totals" subheader="Expenses">
              <TileContent unit="Unit" footer="Footer Text">
              <content>
              <VBox>
              <RatingIndicator id="RI_default" maxValue="5" value="4"/>
              <Label text="Dummy"/>
              </VBox>
              </content>
              </TileContent>
              </GenericTile>


              Hope that helps!






              share|improve this answer




























                2












                2








                2







                This is happening because content in sap.m.TileContent aggregations has the cardinality of 0..1 where 0 is the minimum cardinality, and 1 is the maximum cardinality. This means you can only have a single item inside the content property.



                Following the Fiori Design Guidelines for Rating Indicator you should only use this element in forms, tables or in a dialog box. With that said, it will still work if you insert it into sap.m.TileContent like this:



                <GenericTile header="Cumulative Totals" subheader="Expenses">
                <TileContent unit="Unit" footer="Footer Text">
                <content>
                <RatingIndicator id="RI_default" maxValue="5" value="4" tooltip="Rating Tooltip"/>
                </content><!-- sap.ui.core.Control -->
                </TileContent>
                </GenericTile>


                If you want to add other text in the tile I would suggest you use the footer and/or unit properties in sap.m.TileContent just like in my example above.



                EDIT:



                You can workaround the cardinality of the sap.m.TileContent aggregations by inserting a sap.m.VBox element inside your sap.m.TileContent and insert multiple elements there although I really would advise you not to do it!



                Example:



                <GenericTile header="Cumulative Totals" subheader="Expenses">
                <TileContent unit="Unit" footer="Footer Text">
                <content>
                <VBox>
                <RatingIndicator id="RI_default" maxValue="5" value="4"/>
                <Label text="Dummy"/>
                </VBox>
                </content>
                </TileContent>
                </GenericTile>


                Hope that helps!






                share|improve this answer















                This is happening because content in sap.m.TileContent aggregations has the cardinality of 0..1 where 0 is the minimum cardinality, and 1 is the maximum cardinality. This means you can only have a single item inside the content property.



                Following the Fiori Design Guidelines for Rating Indicator you should only use this element in forms, tables or in a dialog box. With that said, it will still work if you insert it into sap.m.TileContent like this:



                <GenericTile header="Cumulative Totals" subheader="Expenses">
                <TileContent unit="Unit" footer="Footer Text">
                <content>
                <RatingIndicator id="RI_default" maxValue="5" value="4" tooltip="Rating Tooltip"/>
                </content><!-- sap.ui.core.Control -->
                </TileContent>
                </GenericTile>


                If you want to add other text in the tile I would suggest you use the footer and/or unit properties in sap.m.TileContent just like in my example above.



                EDIT:



                You can workaround the cardinality of the sap.m.TileContent aggregations by inserting a sap.m.VBox element inside your sap.m.TileContent and insert multiple elements there although I really would advise you not to do it!



                Example:



                <GenericTile header="Cumulative Totals" subheader="Expenses">
                <TileContent unit="Unit" footer="Footer Text">
                <content>
                <VBox>
                <RatingIndicator id="RI_default" maxValue="5" value="4"/>
                <Label text="Dummy"/>
                </VBox>
                </content>
                </TileContent>
                </GenericTile>


                Hope that helps!







                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited Nov 22 '18 at 9:24

























                answered Nov 20 '18 at 14:33









                Andre FAndre F

                296213




                296213






























                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to Stack Overflow!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53394804%2fhow-to-add-multiple-control-inside-the-content-of-sap-m-tilecontent%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    MongoDB - Not Authorized To Execute Command

                    in spring boot 2.1 many test slices are not allowed anymore due to multiple @BootstrapWith

                    Npm cannot find a required file even through it is in the searched directory