本文整理汇总了Java中com.facebook.react.uimanager.ThemedReactContext.addLifecycleEventListener方法的典型用法代码示例。如果您正苦于以下问题:Java ThemedReactContext.addLifecycleEventListener方法的具体用法?Java ThemedReactContext.addLifecycleEventListener怎么用?Java ThemedReactContext.addLifecycleEventListener使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.facebook.react.uimanager.ThemedReactContext
的用法示例。
在下文中一共展示了ThemedReactContext.addLifecycleEventListener方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: createViewInstance
import com.facebook.react.uimanager.ThemedReactContext; //导入方法依赖的package包/类
@Override
protected PLVideoTextureView createViewInstance(ThemedReactContext reactContext) {
themedReactContext = reactContext;
LayoutInflater inflater=LayoutInflater.from(reactContext);
mEventEmitter=reactContext.getJSModule(RCTEventEmitter.class);
//plVideoTextureView=(PLVideoTextureView) inflater.inflate(R.layout.video_view,null);
plVideoTextureView=new PLVideoTextureView(reactContext);
plVideoTextureView.setOnPreparedListener(mOnPreparedListener);
plVideoTextureView.setOnInfoListener(mOnInfoListener);
plVideoTextureView.setOnErrorListener(mOnErrorListener);
plVideoTextureView.setOnVideoSizeChangedListener(mOnVideoSizeChangedListener);
plVideoTextureView.setOnBufferingUpdateListener(mOnBufferingUpdateListener);
plVideoTextureView.setOnCompletionListener(mOnCompletionListener);
plVideoTextureView.setOnSeekCompleteListener(mOnSeekCompleteListener);
reactContext.addLifecycleEventListener(this);//监听LifecycleEventListener的生命周期需要添加这句
return plVideoTextureView;
}
示例2: createViewInstance
import com.facebook.react.uimanager.ThemedReactContext; //导入方法依赖的package包/类
@Override
protected PLVideoView createViewInstance(ThemedReactContext reactContext) {
this.reactContext = reactContext;
mEventEmitter = reactContext.getJSModule(RCTEventEmitter.class);
mVideoView = new PLVideoView(reactContext);
// Set some listeners
mVideoView.setOnPreparedListener(mOnPreparedListener);
mVideoView.setOnInfoListener(mOnInfoListener);
mVideoView.setOnVideoSizeChangedListener(mOnVideoSizeChangedListener);
mVideoView.setOnBufferingUpdateListener(mOnBufferingUpdateListener);
mVideoView.setOnCompletionListener(mOnCompletionListener);
mVideoView.setOnSeekCompleteListener(mOnSeekCompleteListener);
mVideoView.setOnErrorListener(mOnErrorListener);
reactContext.addLifecycleEventListener(this);
return mVideoView;
}
示例3: ReactVideoView
import com.facebook.react.uimanager.ThemedReactContext; //导入方法依赖的package包/类
public ReactVideoView(ThemedReactContext themedReactContext) {
super(themedReactContext);
mThemedReactContext = themedReactContext;
mEventEmitter = themedReactContext.getJSModule(RCTEventEmitter.class);
themedReactContext.addLifecycleEventListener(this);
initializeMediaPlayerIfNeeded();
setSurfaceTextureListener(this);
mProgressUpdateRunnable = new Runnable() {
@Override
public void run() {
if (mMediaPlayerValid && !isCompleted &&!mPaused) {
WritableMap event = Arguments.createMap();
event.putDouble(EVENT_PROP_CURRENT_TIME, mMediaPlayer.getCurrentPosition() / 1000.0);
event.putDouble(EVENT_PROP_PLAYABLE_DURATION, mVideoBufferedDuration / 1000.0); //TODO:mBufferUpdateRunnable
mEventEmitter.receiveEvent(getId(), Events.EVENT_PROGRESS.toString(), event);
// Check for update after an interval
// TODO: The update interval is fixed at 250. There is a property in React component that defines this value. Totally ignored !!!
mProgressUpdateHandler.postDelayed(mProgressUpdateRunnable, 250);
}
}
};
}
示例4: createViewInstance
import com.facebook.react.uimanager.ThemedReactContext; //导入方法依赖的package包/类
@Override
protected PLVideoView createViewInstance(ThemedReactContext reactContext) {
this.reactContext = reactContext;
mEventEmitter = reactContext.getJSModule(RCTEventEmitter.class);
mVideoView = new PLVideoView(reactContext);
// Set some listeners
mVideoView.setOnPreparedListener(mOnPreparedListener);
mVideoView.setOnInfoListener(mOnInfoListener);
mVideoView.setOnVideoSizeChangedListener(mOnVideoSizeChangedListener);
mVideoView.setOnBufferingUpdateListener(mOnBufferingUpdateListener);
mVideoView.setOnCompletionListener(mOnCompletionListener);
mVideoView.setOnSeekCompleteListener(mOnSeekCompleteListener);
mVideoView.setOnErrorListener(mOnErrorListener);
reactContext.addLifecycleEventListener(this);
mProgressUpdateRunnable=new Runnable() {
@Override
public void run() {
if(mVideoView.isPlaying()){
WritableMap event = Arguments.createMap();
event.putDouble("currentTime", mVideoView.getCurrentPosition()/1000);
mEventEmitter.receiveEvent(getTargetId(), PiliPlayerViewManager.Events.PROGRESS.toString(), event);
mProgressUpdateHandler.postDelayed(mProgressUpdateRunnable,1000);
}
}
};
return mVideoView;
}
示例5: createViewInstance
import com.facebook.react.uimanager.ThemedReactContext; //导入方法依赖的package包/类
@Override
protected PLVideoView createViewInstance(ThemedReactContext reactContext) {
this.reactContext = reactContext;
mEventEmitter = reactContext.getJSModule(RCTEventEmitter.class);
mVideoView = new PLVideoView(reactContext);
// Set some listeners
mVideoView.setOnPreparedListener(mOnPreparedListener);
mVideoView.setOnInfoListener(mOnInfoListener);
mVideoView.setOnVideoSizeChangedListener(mOnVideoSizeChangedListener);
mVideoView.setOnBufferingUpdateListener(mOnBufferingUpdateListener);
mVideoView.setOnCompletionListener(mOnCompletionListener);
mVideoView.setOnSeekCompleteListener(mOnSeekCompleteListener);
mVideoView.setOnErrorListener(mOnErrorListener);
reactContext.addLifecycleEventListener(this);
mProgressUpdateRunnable=new Runnable() {
@Override
public void run() {
if(mVideoView.isPlaying()){
WritableMap event = Arguments.createMap();
event.putDouble("currentTime", mVideoView.getCurrentPosition()/1000);
event.putDouble("totalTime", mVideoView.getDuration()/1000); //TODO:mBufferUpdateRunnable
mEventEmitter.receiveEvent(getTargetId(), Events.PROGRESS.toString(), event);
mProgressUpdateHandler.postDelayed(mProgressUpdateRunnable,1000);
}
}
};
return mVideoView;
}
示例6: createViewInstance
import com.facebook.react.uimanager.ThemedReactContext; //导入方法依赖的package包/类
@Override
public CrosswalkWebView createViewInstance (ThemedReactContext context) {
Activity _activity = reactContext.getCurrentActivity();
CrosswalkWebView crosswalkWebView = new CrosswalkWebView(context, _activity);
context.addLifecycleEventListener(crosswalkWebView);
reactContext.addActivityEventListener(new XWalkActivityEventListener(crosswalkWebView));
return crosswalkWebView;
}
开发者ID:KingBarbarian,项目名称:react-native-android-new-crosswalk,代码行数:9,代码来源:CrosswalkWebViewGroupManager.java
示例7: createViewInstance
import com.facebook.react.uimanager.ThemedReactContext; //导入方法依赖的package包/类
@Override
protected WebView createViewInstance(ThemedReactContext reactContext) {
ReactWebView webView = new ReactWebView(reactContext);
webView.setWebChromeClient(new WebChromeClient() {
@Override
public boolean onConsoleMessage(ConsoleMessage message) {
if (ReactBuildConfig.DEBUG) {
return super.onConsoleMessage(message);
}
// Ignore console logs in non debug builds.
return true;
}
@Override
public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
callback.invoke(origin, true, false);
}
});
reactContext.addLifecycleEventListener(webView);
mWebViewConfig.configWebView(webView);
webView.getSettings().setBuiltInZoomControls(true);
webView.getSettings().setDisplayZoomControls(false);
webView.getSettings().setDomStorageEnabled(true);
// Fixes broken full-screen modals/galleries due to body height being 0.
webView.setLayoutParams(
new LayoutParams(LayoutParams.MATCH_PARENT,
LayoutParams.MATCH_PARENT));
if (ReactBuildConfig.DEBUG && Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
WebView.setWebContentsDebuggingEnabled(true);
}
return webView;
}