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自体がレンダリングされないことを意味する白色に着色されていません。
私は間違っていますか?
でしょうが、あなたがこの問題を解決できましたか?証明して答えてください! – lschmierer