2011-01-25 5 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()); 
    } 
} 

助けてください。前もって感謝します。あなたがSeekBarようProgressBarクラスのメソッドgetProgress()を探している

答えて

24

ProgressBarのサブクラスです。

だから、基本的にはそういうことでしょう。

int value = seekBar.getProgress(); 

また、intをStringに変換して後でそのStringをIntegerに変換できる理由はわかりません。それは意味をなさない。

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()); 
    } 
}); 
関連する問題