2017-06-13 13 views
0


この質問に対する回答を検索しましたが、見つかったすべての解決策が機能しなかったため、おそらく私の問題はより高いレベルにあると思っています(ただし、SAP公式および非公式のSAPガイドは役に立たなかった)。 SAPUI5セマンティック詳細ビュー内にfragmentまたはxmlviewを挿入する方法

私はフィオーリ主従アプリケーションを持っている、と私の詳細ビューは以下の通りです:

<core:FragmentDefinition 
    xmlns="sap.m" 
    xmlns:core="sap.ui.core" 
    xmlns:l="sap.ui.layout" 
    xmlns:f="sap.ui.layout.form" 
    xmlns:mvc="sap.ui.core.mvc"> 
    <Text> 
     FRAGMENT CONTENT 
    </Text> 
</core:FragmentDefinition> 

xmlviewですが:

<mvc:View 
     controllerName="masterdetailsample.controller.Detail" 
     xmlns="sap.m" 
     xmlns:l="sap.ui.layout" 
     xmlns:core="sap.ui.core" 
     xmlns:mvc="sap.ui.core.mvc" 
     xmlns:semantic="sap.m.semantic"> 

    <semantic:DetailPage 
     id="page" 
     navButtonPress="onNavBack" 
     showNavButton="{device>/system/phone}" 
     title="{i18n>detailTitle}" 
     busy="{detailView>/busy}" 
     busyIndicatorDelay="{detailView>/delay}"> 

     <semantic:content> 
      <ObjectHeader 
       id="objectHeader" 
       title="{EmployeeID}"> 
      </ObjectHeader> 
      <l:VerticalLayout> 
       <IconTabBar 
        id="iconTabBar" 
        class="sapUiResponsiveContentPadding" 
        upperCase="true"> 
        <items> 
         <IconTabFilter 
          id="detailIconTabBarInfo" 
          text="{i18n>detailIconTabBarInfo}" 
          tooltip="{i18n>detailIconTabBarInfo}"> 

          <Toolbar design="Solid"> 
           <content> 
            <Title 
             text="{i18n>detailIconTabBarInfo}" 
             width = "100%"> 
            </Title> 
           </content> 
          </Toolbar> 

          <core:Fragment id="perfEval" fragmentName="masterdetailsample.view.viewcomponents.PerformanceDevelopment" type="XML"/> 
          <mvc:XMLView id="compOvw" viewName="masterdetailsample.view.viewcomponents.PerformanceDevelopment" displayBlock="true"/> 

         </IconTabFilter> 
        </items>  
       </IconTabBar> 
      </l:VerticalLayout> 
     </semantic:content> 
    </semantic:DetailPage> 
</mvc:View> 

そして、私のフラグメントページは以下のとおりです。

<mvc:View 
    xmlns="sap.m" 
    xmlns:core="sap.ui.core" 
    xmlns:l="sap.ui.layout" 
    xmlns:f="sap.ui.layout.form" 
    xmlns:mvc="sap.ui.core.mvc" 
    controllerName="masterdetailsample.controller.PerformanceDevelopment"> 
    <Text> 
     FRAGMENT CONTENT 
    </Text> 
</mvc:View> 

私は考えることができるすべての組み合わせを試しましたが、ページはレンダリングされません。
ここで、フラグメントとxmlviewsは、sap.mの "content"タグにはならないアグリゲータで囲まなければなりません。だから、私は "VerticalLayout"とsap.ui.layoutの "content"を使ってページを移動しようとしましたが、ブラウザは正しいアグリゲーターの使用について不平を言います(ffコンソールから "テキストノードを直接集約にテキストを追加するには、周囲のHTMLタグが必要です:フラグメントコンテンツ ")。
私はmanifes.jsonに宣言しなければならないが、私が正しく理解していれば、このページが「スタンドアロン」である場合にのみ表示する必要があります。私は、私のアプリケーションでこのサブビューや断片の多くを再利用するので、これは私のケースではないと思った。
別の試みの間にごみや間違ったコードが残っているかどうかを確認しましたが、すべてが正しいようです。
xmlviewsとフラグメントをsap.m.semantic.DetailPage内で使用できないかもしれないと思っていましたが、私はSAP拡張を使ってこの証拠を見つけられませんでした。
私が行ったように詳細ページを構成するのは正しいですか? IconTabFilterにサブビューやフラグメントが含まれている場合や、別の方法でページを設計する方がよい場合がありますか?私が何かを変えるたびに、それが概念的な、あるいは設計ミスのためにうまくいかないかどうかわからず、私はこれで少し不満を感じています。

はすべて

答えて

0

エラーが<Text> FRAGMENT CONTENT </Text>によって引き起こされる、ありがとうございました。テキストを直接<Text>タグに入力することはできません。あなたは使用する必要があります<Text text="FRAGMENT CONTENT"/>.

残りのコードは正常です。

+0

さて、ありがとうございました!私は印象の下にタグの中にいくつかの禁じられたタグがあり、それは私には意味がない。これは間違いなく論理的です。ありがとうございます。 –

+0

@MarcoDalena喜んで助けてください。これがあなたの問題を解決した場合は、回答を受け入れるか、そうでない場合は教えてください。私はそれを編集しようとします。編集:これまでに決して答えを受け入れていないことに気づいたので、このリンクをここに残します: https://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work –

関連する問題