数値ピッカーで簡単な計算をしようとしています。これは基本的な文字列操作です。問題が発生した場合は、以下のコードで開始を見つけてください。私はいくつかの数値ピッカーを持っています。それぞれに、各間隔内の所定の値があります。
NumberPicker np - adds 25 to each individual number. 1 = 25, 2 = 50, etc
NumberPicker np2 - adds 100 to each individual number. 1 = 100, 2 = 200, etc
これで、これらの数値ピッカー値の現在の出力を表示し、そこに「重み」を追加して、合計した数値を表示する必要があるメインの TextView ができました。
私の質問が私が書き込もうとしているほど明確でない場合は、申し訳ありません。簡単な方法でこれを行う方法を理解するのに役立つ良いリソースを見つけるのに苦労しています.
以下のコードで、textview の現在の値を取得してから、numberpicker の値を取得しようとしています。次に、25 という数字を追加するコードが必要なので、1 = +25 にして、textview に設定します。
String current_weight = current_weight_view.getText().toString();
String newvalue= getText(newVal).toString();
res=Integer.parseInt(current_weight)+Integer.parseInt(newvalue);
current_weight_view.setText(Integer.toString(res));
--
public class MainActivity extends Activity {
private TextView current_weight;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
setupUI();
}
public void setupUI()
{
current_weight = (TextView) findViewById(R.id.current_weight);
NumberPicker np = (NumberPicker) findViewById(R.id.npId);
NumberPicker np1 = (NumberPicker) findViewById(R.id.NumberPicker01);
NumberPicker np2 = (NumberPicker) findViewById(R.id.NumberPicker02);
NumberPicker np3 = (NumberPicker) findViewById(R.id.NumberPicker03);
np.setOnValueChangedListener(new OnValueChangeListener()
{
public void onValueChange(NumberPicker picker, int oldVal,
int newVal)
{
current_weight.setText(String.valueOf(newVal));
}
});
np1.setOnValueChangedListener(new OnValueChangeListener()
{
public void onValueChange(NumberPicker picker, int oldVal,
int newVal)
{
current_weight.setText(String.valueOf(newVal));
}
});
np2.setOnValueChangedListener(new OnValueChangeListener()
{
public void onValueChange(NumberPicker picker, int oldVal,
int newVal)
{
current_weight.setText(String.valueOf(newVal));
}
});
np3.setOnValueChangedListener(new OnValueChangeListener()
{
public void onValueChange(NumberPicker picker, int oldVal,
int newVal)
{
current_weight.setText(String.valueOf(newVal));
}
});
np.setMaxValue(10);
np.setMinValue(1);
np1.setMaxValue(10);
np1.setMinValue(1);
np2.setMaxValue(10);
np2.setMinValue(1);
np3.setMaxValue(10);
np3.setMinValue(1);
}