Вот код, который я до сих пор:номер сборщика застревает при установке на 0
final ImageView plus_button = (ImageView) view.findViewById(R.id.plus_sign);
final ImageView minus_button = (ImageView) view.findViewById(R.id.minus_sign);
final int[] counter = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
final TextView num = (TextView) view.findViewById(R.id.num);
plus_button.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
if (plus_button.isPressed()) {
if ((counter[0] <= 9) && (counter[0] >= 0)) {
counter[0]++;
num.setText(Integer.toString(counter[0]));
}
}
}
});
minus_button.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
if (minus_button.isPressed()) {
counter[0]--;
if ((counter[0] <= 9) && (counter[0] >= 0)) {
num.setText(Integer.toString(counter[0]));
}
}
}
});
Это показывает что-то вроде сборщика номер или номер инкрементора/decrementer (?).
Как
- номер +
, где число в диапазоне от 0 до 10. Если вы нажмете на «-», то число декремент, а если нажать на плюс приращений число «+».
Приведенные выше код в основном работает, но я заметил несколько странных вещей:
1) Початкоотделитель пустой на первом, как это: - +
без номера, установленного внутри. Когда я нажимаю «плюс», я хочу, чтобы он показывал 0, но вместо этого он показывает 1. Поэтому я думаю, что он должен сначала показывать 0, но вместо этого он показывает пустое. Не знаете почему?
2) Я могу увеличивать весь путь до 10, нажимая знак «плюс», начиная с 1, но когда я спускаюсь до нуля, я не могу вернуться к списку номеров. Я не уверен, почему это происходит?
редактировать: Это происходит, если я нажму на кнопку минус два раза после того, как я ударил 0.
3) Как я могу получить конкретный номер, который подборщика установлен на от того, как у меня это закодировано выше? Напр. если пользователь устанавливает его на 5, как я могу узнать, что пользователь установил сборщик на 5? Есть ли способ узнать?
EDIT: Вот недавно отредактированный код:
final ImageView plus_button = (ImageView) view.findViewById(R.id.plus_sign);
final ImageView minus_button = (ImageView) view.findViewById(R.id.minus_sign);
final int[] counter = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
final TextView num = (TextView) view.findViewById(R.id.num);
num.setText(Integer.toString(counter[0]));
plus_button.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
if (plus_button.isPressed()) {
if ((counter[0] <= 9) && (counter[0] >= 0)) {
counter[0]++;
num.setText(Integer.toString(counter[0]));
System.out.println(num.getText().toString());
}
}
}
});
minus_button.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
if (minus_button.isPressed()) {
if ((counter[0] <= 9) && (counter[0] >= 0)) {
counter[0]--;
num.setText(Integer.toString(counter[0]));
System.out.println(num.getText().toString());
}
}
}
});
Можете ли вы подробно остановиться на номере 2 или привести мне пример? Номер 3 работает, спасибо. – Euridice01
Вы вычитаете, только если нажата кнопка минус, вы не считаете, что она может быть равна нулю. Предположим, что он установлен в 0, вы нажимаете, и он установлен в -1, но следующий, если в вашем методе «минус» говорит, что если num> = 0, то он должен отображаться. Просто поставьте счетчик [0] -; предложение внутри вашего второго, если. Таким образом, ваш счетчик переменных [0] не сможет иметь значение меньше нуля – sbacaro
ohhh Я вижу. Спасибо, лол: D Я этого раньше не заметил, но теперь он показывает -1. Я не хочу видеть -1, но только 0. – Euridice01