質問するログイン新規登録

回答編集履歴

2

ボタンアルゴリズムの修正

2015/10/19 08:18

投稿

退会済みユーザー
answer CHANGED
@@ -52,11 +52,23 @@
52
52
  button.setOnClickListener(new View.OnClickListener() {
53
53
  @Override
54
54
  public void onClick(View v) {
55
+ try {
55
- int amount = Integer.parseInt(editText.getText().toString());
56
+ final int amount = Integer.parseInt(editText.getText().toString());
56
- int number = (int) spinner.getSelectedItem();
57
+ final int number = (int) spinner.getSelectedItem();
57
- /* 割り勘のアルゴリズムは考えましょう */
58
+ /* 割り勘のアルゴリズムは考えましょう */
59
+ if (amount < 0) {
60
+ managerTextView.setText("負の数は非対応です");
61
+ othersTextView.setText("自然数を入力してください");
62
+ } else {
63
+ final int others = amount / number / 1000 * 1000;
64
+ final int manager = amount - others * (number - 1);
58
- managerTextView.setText(String.valueOf(amount / number));
65
+ managerTextView.setText(String.valueOf(manager));
59
- othersTextView.setText(String.valueOf(amount / number));
66
+ othersTextView.setText(String.valueOf(others));
67
+ }
68
+ } catch (NumberFormatException e) {
69
+ managerTextView.setText("parseIntに失敗しました");
70
+ othersTextView.setText("自然数を入力してください");
71
+ }
60
72
  }
61
73
  });
62
74
  linearLayout.addView(button);

1

ソースコード修正

2015/10/19 08:18

投稿

退会済みユーザー
answer CHANGED
@@ -73,8 +73,9 @@
73
73
  final Spinner spinner = (Spinner)findViewById(R.id.spinner);
74
74
  final TextView managerTextView = (TextView) findViewById(R.id.managerTextView);
75
75
  final TextView othersTextView = (TextView) findViewById(R.id.othersTextView);
76
+ final Button button = (Button) findViewById(R.id.button);
76
77
 
77
- spinner.setAdapter(new ArrayAdapter<>(this, R.layout.support_simple_spinner_dropdown_item, list));
78
+ spinner.setAdapter(new ArrayAdapter<>(this, android.R.layout.simple_dropdown_item_1line, list));
78
79
 
79
80
  button.setOnClickListener(new View.OnClickListener() {
80
81
  @Override