YouTube Android API'sini React Native için bir UI Bileşeni olarak sarmalamaya çalışıyorum. Bazı şeylerin Android konfigürasyonunda başarılı oldum (onInitializationSuccess), ancak YouTubePlayerView cihazımı React Native uygulamasına nasıl geri döndürdüğümü anlayamıyorum.Yerel Android ViewManager Tepsisindeki Fragmenti Gizleme
YouTubeBaseActivity'yi genişletemezseniz, dokümanlara göre YouTubePlayerFragment uygulamasını kullanmanızı öneririz. Android'de React Native, XML tabanlı mizanpaj kullanmıyor olduğundan, görünümleri programsal olarak oluşturmaya çalıştım. Ancak, Sarma Görünümünü döndürdüğümde (FrameLayout olarak denedim, ancak doğru seçim olup olmadığından emin değilim).
Şimdilik son derece basit tutmak arıyorum, burada kod gerekli bit şunlardır:
YouTubeManager.java
public class YouTubeManager extends SimpleViewManager<FrameLayout> implements YouTubePlayer.OnInitializedListener {
// ...
@Override
protected FrameLayout createViewInstance(ThemedReactContext reactContext) {
this.reactContext = reactContext;
FrameLayout view = new FrameLayout(reactContext);
view.setId(View.generateViewId());
FragmentManager fragmentManager = activity.getFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
YouTubePlayerFragment fragment = new YouTubePlayerFragment();
fragmentTransaction.add(view.getId(), fragment);
fragmentTransaction.commit();
fragment.initialize("SECRET_KEY", this);
return view;
}
// ...
}
YouTube.js
class YouTube extends Component {
render() {
return <YouTubeAndroid {...this.props}/>;
}
};
var iface = {
name : 'YouTube',
propTypes : {
...View.propTypes
},
};
var YouTubeAndroid = requireNativeComponent('YouTube', iface);
module.exports = YouTube;
index.android.js
var YouTube = require('./YouTube');
class YouTubePlayer extends Component {
render() {
return (
<View style={styles.container}>
<Text>hello</Text>
<YouTube />
</View>
);
}
}
Herhangi bir yardım gerçekten çok memnun olur, teşekkür ederim!
youtube bileşeni yardımına açık yüksekliğe ve genişliğe ayarı mı? –
@agent_hunt evet, sabit bir yükseklik/genişlik ve backgroundColor vermeyi denedim. Boş bir görünüm oluşturur https: //www.dropbox.com/s/3obfjs6agcux3z2/Screenshot% 202016-03-26% 2017.10.55.png? dl = 0 – stan229
Sorun çözüldü mü? Fragmanı oluşturmayı başardınız mı? – lschmierer