android 引导蒙层实现
ringa_lee
ringa_lee 2017-04-18 09:03:54
0
3
2625

页面结构:activity-fragment—recycleView
目标,整个页面蒙层,并在recycleView的第一个item上添加一个高亮提示。
现在我要获取这个item的view,在onResume中使用getLayoutManager.findViewByPosition方法得到的view为空。
我应该何时何地获取该view?

ringa_lee
ringa_lee

ringa_lee

répondre à tous(3)
Ty80

getLayoutManager.findViewByPosition(...) est appelé au mauvais moment

getView().post(new Runnable() {
    Afficher la vue = getLayoutManager.findViewByPosition(0);
    //FAIRE...
});
大家讲道理

Utilisez l'écoute de l'arborescence des vues pour obtenir les contrôles ou propriétés correspondants :

//1 Activer la surveillance de l'arborescence des vues.
recycleView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {

    @Outrepasser
    public void onGlobalLayout() {
        //2. Une fois la vue dessinée, supprimez le premier élément
        Vue vue = recyclerView.getChildAt(0);
        //3.Surveillance de déconnexion
        recyclerView.getViewTreeObserver().removeOnGlobalLayoutListener(this);
        //4. faire quelque chose avec la première vue d'élément...
    }
});
左手右手慢动作

Il est possible d'utiliser la méthode de surveillance de l'arborescence des vues à l'étage. Utilisez getViewTreeObserver().addOnGlobalLayoutListener() pour obtenir la largeur ou la hauteur finale de la vue, et getViewTreeObserver().addOnDrawListener pour surveiller le redessinage de la vue. Il s'agit d'une méthode courante

.
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal