2017-10-03 8 views
1

私はumanoからスライドアップパネルを使用していますhttps://github.com/umano/AndroidSlidingUpPanel。私は軽微で愚かな問題に直面していますが、私はそれを修正することはできません。スライドパネルのセカンダリレイアウトにはテキストビューがあります。上にドラッグして展開すると、textViewが遅くなり、消えてしまいます(SoundCloudミュージックアプリのように)。それを元に戻すと、textViewが再度表示されるはずです。それを修正するには?私はたくさん試しましたが、失敗しました。 enter image description hereスライディングアップパネルレイアウトリスナの実装。二次レイアウトの可視性の問題。

赤く塗りつぶされたパネル。私はそれが必要で、使用とちょうど逆の動作するかどうか、それは完全に、開かれる値れるか分からないとして

slidingUpPanelLayout.addPanelSlideListener(new 
SlidingUpPanelLayout.PanelSlideListener() { 
    @Override 
    public void onPanelSlide(View panel, float slideOffset) { 

     SongNameSlide.setAlpha(slideOffset); 
     ArtistNameSlide.setAlpha(slideOffset); 
     buttonabc.setAlpha(slideOffset); 
    } 

MainActivity.java

slidingUpPanelLayout = 
(SlidingUpPanelLayout)findViewById(R.id.sliding_layout); 


    slidingUpPanelLayout.addPanelSlideListener(new 
SlidingUpPanelLayout.PanelSlideListener() { 
     @Override 
     public void onPanelSlide(View panel, float slideOffset) { 

      SongNameSlide.setVisibility(panel.INVISIBLE); 
      ArtistNameSlide.setVisibility(panel.INVISIBLE); 
      buttonabc.setVisibility(panel.INVISIBLE); 

     } 

     @Override 
     public void onPanelStateChanged(View panel, 
SlidingUpPanelLayout.PanelState previousState, SlidingUpPanelLayout.PanelState newState) { 
      if(newState.equals(SlidingUpPanelLayout.PanelState.EXPANDED)&& 
previousState.equals(SlidingUpPanelLayout.PanelState.COLLAPSED)){ 
       SongNameSlide.setVisibility(panel.GONE); 
       ArtistNameSlide.setVisibility(panel.GONE); 
       buttonabc.setVisibility(panel.GONE); 
       slidingUpPanelLayout.setDragView(panel); 


      } 

     else { 

       SongNameSlide.setVisibility(panel.VISIBLE); 
       ArtistNameSlide.setVisibility(panel.VISIBLE); 
       buttonabc.setVisibility(panel.VISIBLE); 
      } 
     } 
    }); 

    slidingUpPanelLayout.setFadeOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 

slidingUpPanelLayout.setPanelState (SlidingUpPanelLayout.PanelState.COLLAPSED); 
     } 
    }); 

答えて

1

はこれを使用してみてくださいこのように - >SongNameSlide.setAlpha(1 - slideOffset);

+0

ああ!そこにそれがある!とてもシンプルでした。私の愚かな質問を申し訳ありません、私はこれに新しいです。ところで、私はslideOffsetが何であるか分かりますか?それはパネルがどこまで行くのでしょうか? –

+0

@SebinPaul slideOffsetは、フルオープンの場合は1になり、フルクローズの場合は0になるほとんどのスライダのデフォルト値であるfloat値です。この値をsetAlpha値に割り当てることによって、0から1にゆっくりと変化し、消滅/出現効果が発生する。 –

+0

いいね!あなたの時間のおかげでありがとう! –

関連する問題