使用导航组件将自定义类型对象从片段传递到活动

Aminakoy

我想将中的MediaStream对象传递FragmentActivity使用Navigation ComponentMediaStream类属WebRTC因此,我无法触摸它以使它可打包或可序列化以用于传递对象。

以下是片段中的代码:

// Creating a PeerConnection with two callbacks 
// one is triggered when an ICE candidate is received
// the other one is triggered when a MediaStream is received
localPeer = peerConnectionFactory.createPeerConnection(
            rtcConfig,
            object: CustomPeerConnectionObserver("localPeerCreation"){
                override fun onIceCandidate(iceCandidate: IceCandidate?) {
                   // not relevant for this talk 
                }

                override fun onAddStream(mediaStream: MediaStream?) {
                    super.onAddStream(mediaStream)
                    // TODO: create a new Activity and pass media stream to it for displaying
                    StreamsFragmentDirections.actionStreamsFragmentToStreamActivity(mediaStream)
                }
            })!!

就像TODO线所暗示的那样,我的最初目标是将MediaStream对象传递给应该显示流的新Activity。但是我不知道该怎么做。在“导航图编辑器”中,我选择了<inferred type>作为类型,mediastream但没有按预期完成。这里,来自导航图xml布局的相关部分:

<activity
        android:id="@+id/streamActivity"
        android:name="com.john.elia.ui.activities.StreamActivity"
        android:label="StreamActivity" >
        <argument 
            android:name="mediaStream" />
</activity>

但是编译器抱怨说,它期望一个Int但找到了MediaStream。如何传递MediaStream物体?在所有示例中,我发现它们仅显示如何传递基本类型(如String,Int等)。具有自定义类型的对象又如何呢?

阵风使蓝色

您可能无法实现每种类型的对象Parcelable,但是通过遵循现代应用程序体系结构的原理,您不必再这样做,另请参阅应用程序体系结构指南

一般的想法是将您的数据存储在存储库(真相的唯一来源)中,Activitys和Fragments可以通过一些自定义类扩展访问它们ViewModel

所以一旦你获得任何类型的数据(的MediaStream中)Fragment,你应该把它传递到存储库,导航到下一个UI组件,并将它从它自己的帮助存储库中取出数据ViewModel

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将自定义对象arraylist从活动传递到带有实例的片段

来自分类Dev

如何将自定义数组列表从片段传递到活动

来自分类Dev

将自定义属性传递到Aurelia组件

来自分类Dev

将自定义对象传递给另一个片段

来自分类Dev

带有活动和片段的自定义导航抽屉

来自分类Dev

带有活动和片段的自定义导航抽屉

来自分类Dev

如何将自定义对象从自定义身份验证提供程序传递到控制器?

来自分类Dev

将自定义类对象传递给Java中的泛型类型

来自分类Dev

将自定义对象传递到Spring Boot Controller中

来自分类Dev

将自定义类型传递给 Apollo Mutation

来自分类Dev

将自定义函数传递给jquery对象

来自分类Dev

将自定义对象传递给WTForm

来自分类Dev

通过意图将自定义数组数据传递到另一个活动

来自分类Dev

Formik将自定义的道具传递给自定义字段组件

来自分类Dev

Formik将自定义的道具传递给自定义字段组件

来自分类Dev

使用std :: function对象将自定义删除器传递给std :: unique_ptr

来自分类Dev

使用std :: function对象将自定义删除器传递给std :: unique_ptr

来自分类Dev

将自定义对象属性绑定到BooleanBinding

来自分类Dev

在WPF中将自定义对象绑定到TreeView

来自分类Dev

是否可以像组件绑定一样将自定义元素传递给参数的对象?

来自分类Dev

如何使用C#将自定义对象发布到Web API

来自分类Dev

将自定义方法从自定义类传递到.map

来自分类Dev

是否可以使用导航组件将数据从片段传递到活动?如果可以,请告诉我

来自分类Dev

将自定义类型属性绑定到自定义控件

来自分类Dev

根据按钮状态导航到自定义组件

来自分类Dev

我们可以在PhoneGap / Cordova中将自定义对象从本机传递到JS吗?

来自分类Dev

仅使用下标将自定义类型符合RandomAccessCollection

来自分类Dev

vue将自定义组件作为属性传递给父组件

来自分类Dev

Typescript React,如何为将自定义输入组件作为prop的组件提供类型信息?

Related 相关文章

  1. 1

    如何将自定义对象arraylist从活动传递到带有实例的片段

  2. 2

    如何将自定义数组列表从片段传递到活动

  3. 3

    将自定义属性传递到Aurelia组件

  4. 4

    将自定义对象传递给另一个片段

  5. 5

    带有活动和片段的自定义导航抽屉

  6. 6

    带有活动和片段的自定义导航抽屉

  7. 7

    如何将自定义对象从自定义身份验证提供程序传递到控制器?

  8. 8

    将自定义类对象传递给Java中的泛型类型

  9. 9

    将自定义对象传递到Spring Boot Controller中

  10. 10

    将自定义类型传递给 Apollo Mutation

  11. 11

    将自定义函数传递给jquery对象

  12. 12

    将自定义对象传递给WTForm

  13. 13

    通过意图将自定义数组数据传递到另一个活动

  14. 14

    Formik将自定义的道具传递给自定义字段组件

  15. 15

    Formik将自定义的道具传递给自定义字段组件

  16. 16

    使用std :: function对象将自定义删除器传递给std :: unique_ptr

  17. 17

    使用std :: function对象将自定义删除器传递给std :: unique_ptr

  18. 18

    将自定义对象属性绑定到BooleanBinding

  19. 19

    在WPF中将自定义对象绑定到TreeView

  20. 20

    是否可以像组件绑定一样将自定义元素传递给参数的对象?

  21. 21

    如何使用C#将自定义对象发布到Web API

  22. 22

    将自定义方法从自定义类传递到.map

  23. 23

    是否可以使用导航组件将数据从片段传递到活动?如果可以,请告诉我

  24. 24

    将自定义类型属性绑定到自定义控件

  25. 25

    根据按钮状态导航到自定义组件

  26. 26

    我们可以在PhoneGap / Cordova中将自定义对象从本机传递到JS吗?

  27. 27

    仅使用下标将自定义类型符合RandomAccessCollection

  28. 28

    vue将自定义组件作为属性传递给父组件

  29. 29

    Typescript React,如何为将自定义输入组件作为prop的组件提供类型信息?

热门标签

归档