2016-04-27 5 views
0

私の旅行と経費(標準アプリケーション)からUI要素をほとんど隠したくありません。私はさまざまなアプローチで試しましたが、私が望むものを達成することはできません。ここに私の要件は次のとおりです。私の旅行費用のApp(TRV_TE_CRE)で標準アプリケーションのfragment.xmlからUI要素を隠す

は、私は、次のUI要素を非表示にしたい:

GenericClaim.fragment.xml - Button id="costAssignmentButton"

を私はTRV_TE_CREのための拡張プロジェクトを追加し、以下のように試してみました:

01: component.js

  1. 私は カスタマイズを非表示にするには、次のステートメントを追加しました

    結果:

  2. を動作していないがGenericClaim.controller.js拡張: 私はhookmethod

    this.byFragmentId("costAssignmentButton").setVisible(false); 
    

    結果に以下のコードを追加しました:全体の請求ページはアクセスキーIを使用することにより

  3. をロードしていませんUIコードにコメントしましたGenericClaim.fragment.xml

    Re sult:非表示にならない

答えて

0

フラグメントIDの代わりに、ビューから要素IDにアクセスできます。このメソッドをビューコントローラに追加します。

onAfterRendering : function(){ 
    var buttonToHide = this.getView().byId("costAssignmentButton"); 
    buttonToHide.setVisible(false); 
}, 
+0

私は、標準のアプリケーションの拡張プロジェクトからonAfterRendering()を試してみる必要があります。 onAfterRenderingの内部には、拡張のためのフックメソッドがありません。もう1つ、hookMethodでthis.getView()。byId( "costAssignmentButton")。setVisible(false)のように試しました。結果:ページ全体がロードされていません –

+1

どのフックメソッドを試しましたか? onAfterRenderingはビューが作成された後に呼び出されるフックメソッドです。ビューのコントローラファイルにそのメソッドがない場合は、そのメソッドを追加します。 –

関連する問題