Android 在类似于facebook的listview/scrollview中自动播放视频

Android 在类似于facebook的listview/scrollview中自动播放视频,android,listview,video,scrollbar,playing,Android,Listview,Video,Scrollbar,Playing,如果视图包含视频,我需要在listview/scrollview中自动播放视频。这与facebook非常相似。若用户向下滚动,可见区域包含视频,则系统将播放视频,若仍滚动,则系统将自动停止该视频。它应该像一次播放一个视频一样工作 有人能帮我吗 我通过的资料来源: 谢谢 请按照要点进行操作 首先,您需要在RecyclerView 然后通过侦听器更新您的RecyclerView适配器 protected void onListViewUpdate(final int position, fin

如果视图包含视频,我需要在listview/scrollview中自动播放视频。这与facebook非常相似。若用户向下滚动,可见区域包含视频,则系统将播放视频,若仍滚动,则系统将自动停止该视频。它应该像一次播放一个视频一样工作

有人能帮我吗

我通过的资料来源:


  • 谢谢

    请按照要点进行操作

  • 首先,您需要在
    RecyclerView
  • 然后通过侦听器更新您的
    RecyclerView
    适配器

    protected void onListViewUpdate(final int position, final Object object) {
        final RecyclerView view = mView;
        LinearLayoutManager layoutManager = ((LinearLayoutManager)view.getLayoutManager());
        final View convertView = layoutManager.findViewByPosition(position);
        int firstVisiblePosition = layoutManager.findFirstCompletelyVisibleItemPosition();
        int lastVisiblePosition = layoutManager.findLastCompletelyVisibleItemPosition();            
    
        if (firstVisiblePosition <= position && position <= lastVisiblePosition) {
            // this is the convertView that you previously returned in getView
            // just fix it (for example:)
    
            Thread thread = new Thread(){
                @Override
                public void run() {
                    super.run();
    
                    runOnUiThread(new Runnable() {
                        @Override
                        public void run() {
                            adapter.updateRow(adapter.getItem(position), convertView, object);
                        }
                    });
                }
            };
            thread.start();
        } else {
            // just update your data set, UI will be updated automatically in next
            // getView() call
            adapter.updateData(position, object);
        }
    }
    
    受保护的void onListViewUpdate(最终int位置,最终对象){
    最终回收视图=mView;
    LinearLayoutManager布局管理器=((LinearLayoutManager)视图。getLayoutManager());
    最终视图convertView=layoutManager.findViewByPosition(位置);
    int firstVisiblePosition=layoutManager.findFirstCompletelyVisibleItemPosition();
    int lastVisiblePosition=layoutManager.findLastCompletelyVisibleItemPosition();
    
    如果(firstVisiblePosition For ScrollView)您可以设置一个侦听器,那么有一些方法可以在ListView中查找可见项的位置,您可以检查这些可见项以在那里开始/停止播放。对于ScrollView,您需要在该ScrollView中查找项的绑定。您找到解决方案了吗?还没有george thomas:|您找到解决方案了吗?