2015-12-22 7 views
6

私は、ネイティブUIコンポーネントを構築しようとしましたが、それはしばしばヒットまたはミスです。コンポーネントは、反応ネイティブではレンダリングされていないようです。反応するネイティブで表示されるAndroidのフラグメントを取得するにはどうすればよいですか?

けれどもが、この質問のために、私は、特に内部に反応ネイティブのAndroidの断片をレンダリングしようとしているが、何も現れていません。サンプルコード:上記のビューマネージャと

public class PreferenceViewManager extends SimpleViewManager<FrameLayout> { 
    public static final String REACT_CLASS = "RCTPreferenceView"; 

    private WeakReference<Activity> activityWeakReference; 

    public PreferenceViewManager(WeakReference<Activity> activityWeakReference) { 
     this.activityWeakReference = activityWeakReference; 
    } 

    @Override 
    public String getName() { 
     return REACT_CLASS; 
    } 

    @Override 
    public FrameLayout createViewInstance(ThemedReactContext context) { 
     Log.d(REACT_CLASS, "PreferenceView createViewInstance"); 
     final FrameLayout view = new FrameLayout(context); 
     view.setId(View.generateViewId()); 
     // Testing if the view does get rendered, it should show white even if fragment is not rendered! 
     view.setBackgroundColor(Color.WHITE); 
     // not sure where to call fragment beginTransaction properly, the code below is just for testing 
     view.postDelayed(new Runnable() { 
      @Override 
      public void run() { 
       onAfterUpdateTransaction(view); 
      } 
     }, 2000); 
     return view; 
    } 

    @Override 
    public void onAfterUpdateTransaction(FrameLayout view) { 
     super.onAfterUpdateTransaction(view); 

     activityWeakReference.get().getFragmentManager().beginTransaction().replace(view.getId(), new PreferenceView()).commit(); 
     Log.d(REACT_CLASS, "PreferenceView Commit"); // for debug 
    } 
} 

、ビューがあると想定される場所もでframeLayout自体がレンダリングされないことを意味する白色に着色されていません。

私は間違っていますか?

+0

でしょうが、あなたがこの問題を解決できましたか?証明して答えてください! – lschmierer

答えて

関連する問題