代码之家  ›  专栏  ›  技术社区  ›  SadeQ digitALLife

获取api 19中recyclerView的子项视图

  •  0
  • SadeQ digitALLife  · 技术社区  · 6 年前

        recyclerViewMenuItems.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
            @Override
            public void onGlobalLayout() {
                new Handler().postDelayed(() -> addNewVenueItem = recyclerViewMenuItems.findViewHolderForLayoutPosition(2).itemView.findViewById(R.id.textViewMenuItem), 50);
                recyclerViewMenuItems.getViewTreeObserver().removeOnGlobalLayoutListener(this); 
            }
        });
    

    所以,这部分代码工作正常,但是! 问题是,当我想找到另一个孩子时,我使用以下代码:

        recyclerViewMenuItems.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
            @Override
            public void onGlobalLayout() {
                new Handler().postDelayed(() -> addNewVenueItem = recyclerViewMenuItems.findViewHolderForLayoutPosition(2).itemView.findViewById(R.id.textViewMenuItem), 50);
                recyclerViewMenuItems.getViewTreeObserver().removeOnGlobalLayoutListener(this);
    
                new Handler().postDelayed(() -> storeItem = recyclerViewMenuItems.findViewHolderForLayoutPosition(7).itemView.findViewById(R.id.textViewMenuItem), 50);
                recyclerViewMenuItems.getViewTreeObserver().removeOnGlobalLayoutListener(this);
    
            }
        });
    

    在android api level26中一切正常,但在api 19设备中一切正常 storeItem 这是找到它的第二个视图,返回null!

    如何访问recyclerview的childs视图(不仅是child视图,还有多个子视图)

    0 回复  |  直到 6 年前