cari

Rumah  >  Soal Jawab  >  teks badan

android 引导蒙层实现

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

ringa_leeringa_lee2771 hari yang lalu2597

membalas semua(3)saya akan balas

  • PHP中文网

    PHP中文网2017-04-18 09:05:54

    getLayoutManager.findViewByPosition(...) dipanggil pada masa yang salah

    getView().post(new Runnable() {
        Lihat paparan = getLayoutManager.findViewByPosition(0);
        //TODO...
    });

    balas
    0
  • 大家讲道理

    大家讲道理2017-04-18 09:05:54

    Gunakan mendengar pokok paparan untuk mendapatkan kawalan atau sifat yang sepadan:

    //1 Hidupkan pemantauan pepohon
    recycleView.getViewTreeObserver().addOnGlobalLayoutListener(New ViewTreeObserver.OnGlobalLayoutListener() {
    
        @Override
        public void onGlobalLayout() {
            //2. Selepas paparan dilukis, keluarkan item pertama
            Lihat paparan = recyclerView.getChildAt(0);
            //3.Pemantauan Log keluar
            recyclerView.getViewTreeObserver().removeOnGlobalLayoutListener(this);
            //4. lakukan sesuatu dengan paparan item pertama...
        }
    });

    balas
    0
  • ringa_lee

    ringa_lee2017-04-18 09:05:54

    Adalah mungkin untuk menggunakan kaedah pemantauan pokok pandangan di tingkat atas. Gunakan getViewTreeObserver().addOnGlobalLayoutListener() untuk mendapatkan lebar atau ketinggian akhir View dan getViewTreeObserver().addOnDrawListener untuk memantau lukisan semula View Ini ialah kaedah biasa

    balas
    0
  • Batalbalas