2011-01-25 3 views
5

내 안드로이드 응용 프로그램에서 나는 TextViewSeekBar 있습니다. 두 값은 버튼 클릭시 결과 계산에 사용됩니다.캡처 SeekBar 값

문제는 SeekBar 값을 캡처하여 계산을 위해 String으로 변환하는 방법입니다.

코드

은 다음과 같습니다 :

class clicker implements Button.OnClickListener { 
    public void onClick(View v) { 
     String a,b; 
     Integer vis; 
     a = txtbox3.getText().toString(); 
     b = slider1.getContext().toString(); 
     vis = (Integer.parseInt(a)*Integer.parseInt(b))/100; 
     tv.setText(vis.toString()); 
    } 
} 

제발 도와주세요. 미리 감사드립니다.

답변

24

ProgressBar의 하위 클래스 인 SeekBarProgressBar 클래스의 메서드 getProgress()을 찾고 있습니다.

기본적으로 그렇게 될 것입니다.

int value = seekBar.getProgress(); 

나는 왜 당신이 그 문자열을 나중에 Integer로 변환 할 수 있도록 int를 String으로 변환하고자하는지 이해하지 못합니다. 그것은 아무 의미가 없습니다.

5

진행 값을 전역 정수 변수에 저장할 수 있습니다. 그러면 어디서나 쉽게 사용할 수 있습니다. 이 강령을 사용해보십시오. 도움이 될 것입니다 ...

int p=0; 
@Override 
    public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

final TextView textView=(TextView) findViewById(R.id.t1); 
    final SeekBar seek=(SeekBar) findViewById(R.id.seekBar1); 
final Button button=(Button) findViewById(R.id.button1); 

    seek.setOnSeekBarChangeListener(new OnSeekBarChangeListener() { 

    @Override 
    public void onStopTrackingTouch(SeekBar seekBar) { 
     // TODO Auto-generated method stub 
    } 

    @Override 
    public void onStartTrackingTouch(SeekBar seekBar) { 
     // TODO Auto-generated method stub 
    } 

    @Override 
    public void onProgressChanged(SeekBar seekBar, int progress,boolean fromUser) { 
     // TODO Auto-generated method stub 
     p=progress; 
    } 
}); 


button.setOnClickListener(new View.OnClickListener() { 

    @Override 
    public void onClick(View v) { 
     // TODO Auto-generated method stub 

     String a = textView.getText().toString(); 
     vis = (Integer.parseInt(a)*p)/100; 
      text.setText(vis.toString()); 
    } 
});