-Поиск по дневнику

Поиск сообщений в rss_forum_sources_ru

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 29.07.2007
Записей:
Комментариев:
Написано: 80


уменьшение нумерации строк

Воскресенье, 31 Января 2021 г. 15:22 + в цитатник
Vashnaemnik: Помогите пожалуйста. Я сделал таблицу с нумерацией. При добавлении строки все хорошо, даже когда удаляю часть строк, и создаю новые, он ставит нумерацию правильно, по количеству строк. Но когда я удаляю строку, он мне меняет номер только последней строки, а остальные остаются такие же. Последнюю удаляет ровно на столько, сколько строк осталось. То есть, было 6 строк. Удалил вторую, нумерация остается 1,3,4,5 а номер 6 становиться 2. А надо что бы все строки ниже удаляемой уменьшались на 1. Вот мой код отработки кнопки.
    add_to.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    if (!TextUtils.isEmpty(personal_account.getText().toString()) && !TextUtils.isEmpty(surname_child.getText().toString()) && !TextUtils.isEmpty(name_child.getText().toString()) &&
    !TextUtils.isEmpty(patronymic_child.getText().toString())) {
    TableLayout tableLayout = (TableLayout) findViewById(R.id.table_children);
    LayoutInflater inflater = LayoutInflater.from(MainActivity.this);
    TableRow tr = (TableRow) inflater.inflate(R.layout.table_row_plus, null);
    number = (TextView) tr.findViewById(R.id.number);
    //нумерации строк при добавлении строки
    int aInt = table_children.getChildCount();
    for (int m = 0; m < aInt; m++) {
    String aString = Integer.toString(m + 1);
    number.setText(aString);
    }
    fio_child = (TextView) tr.findViewById(R.id.fio_child);
    String tv1 = surname_child.getText().toString();
    String tv2 = name_child.getText().toString();
    String tv3 = patronymic_child.getText().toString();
    Value1 = tv1 + " " + tv2 + " " + tv3;
    fio_child.setText(Value1);
    number_lc = (TextView) tr.findViewById(R.id.number_lc);
    String tv4 = personal_account.getText().toString();
    number_lc.setText(tv4);
    //переопределяем ImageView, которые появляются со строками
    ImageView markOfTheRow = tr.findViewById(R.id.mark);
    markOfTheRow.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    final AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
    String myFio_child;
    TableRow tr = (TableRow)v.getParent();
    TextView reb = (TextView) tr.getChildAt(1);
    myFio_child = reb.getText().toString();
    builder.setMessage("Удалить: " + myFio_child + " ?");
    builder.setCancelable(true);
    builder.setNegativeButton("нет", new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int which) {
    dialog.cancel();
    }
    });
    builder.setPositiveButton("Да", new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int which) {
    tableLayout.removeView(tr);
    Toast.makeText(getApplicationContext(), "Ребенок удалён", Toast.LENGTH_SHORT).show();
    //нумерация строк при удалении строки
    for (int m = 0; m < (aInt - 1); m++) {
    String aString = Integer.toString(m + 1);
    number.setText(aString);
    }
    }
    });
    AlertDialog alertDialog = builder.create();
    alertDialog.show();
    }
    });
    tableLayout.addView(tr);
    dialog.dismiss();
    Toast.makeText(getApplicationContext(), "Ребенок добавлен", Toast.LENGTH_SHORT).show();
    } else {
    Toast.makeText(getApplicationContext(), "Заполните все поля", Toast.LENGTH_SHORT).show();
    }
    }
    });

https://forum.sources.ru/index.php?showtopic=421154&view=findpost&p=3844210

Метки:  

 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку