2011-04-07 5 views

답변

3

당신이 SeekBar

+0

나는 그것을 볼 수 있습니다 여부 false의 활성화로 설정하면? –

+0

예, 표시되어야합니다. 'setVisibility'는 당신이 보이거나 보이지 않게하기를 원한다면 사라져야합니다. 'setEnabled'는 사용자가 SeekBar와 상호 작용할 수 없도록해야합니다. – ccheneson

2

ccheneson's solution 작품에 원하는 값을 설정 한 후 바로 setEnabled(false)으로 SeekBar를 해제하려고하지만, 그것은 또한 seekbar의 색상을 변경합니다. 당신이 SeekBar를 사용하여 현재 밝은 녹색를 마칠 경우 는 다음 코드를 사용합니다 (또한 유래. 덕분에 여기를! 그래서, 단지 다스 려)

private void makeSeekbarUnchanable(ViewHolder holder) { 
     holder.barRating.setOnSeekBarChangeListener(new OnSeekBarChangeListener() { 

      int originalProgress; 

      @Override 
      public void onStopTrackingTouch(SeekBar seekBar) { 
       //Nothing here..     
      } 

      @Override 
      public void onStartTrackingTouch(SeekBar seekBar) { 

       originalProgress = seekBar.getProgress(); 
      } 

      @Override 
      public void onProgressChanged(SeekBar seekBar, int arg1, boolean fromUser) { 
       if(fromUser == true){ 
        seekBar.setProgress(originalProgress); 
       }    
      } 
     }); 
    } 
2

setEnabled(false) 작품을하지만 불행히도 일부 사용자 정의 SeekBar를 배경을 변경 이유.

그것은 나에게 문제가 있었다, 그래서 나는이 방법을 사용 :

seekProgress.setOnTouchListener(new OnTouchListener() 
    { 
     @Override 
     public boolean onTouch(View v, MotionEvent event) 
     { 
      return true; 
     } 
    }); 
관련 문제