Невозможно разрешить порядок конструктора (Java.lang.string, Java.lang.string, Java.lang.string, void, void) - PullRequest
0 голосов
/ 15 марта 2019

Для моего проекта Android большинство данных сохраняются из базы данных, и мое приложение будет их извлекать.Тем не менее, у меня есть два диалоговых окна, которые устанавливают даты для двух текстовых представлений, а затем сохраняют их в моей базе данных.Я пытаюсь использовать currentBeach.setCheckIn (checkInTV.getText (). ToString ()), что приводит к ошибке моей программы в конструкторе.Какое решение здесь?

Details.java

btnSubmit.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            new Database(getBaseContext()).addToCart(new Order(
                    menuID,
                    currentBeach.getName(),
                    currentBeach.getPrice(),
                    currentBeach.setCheckIn(checkInTV.getText().toString()),
                    currentBeach.setCheckOut(checkOutTV.getText().toString())
            ));
            Intent intent = new Intent(details.this, Cart.class);
            startActivity(intent);

        }
    });

Order.Java (Конструктор)

public Order(String productId, String productName, String description, String price, String checkIn, String checkOut) {
    ProductId = productId;
    ProductName = productName;
    Description = description;
    Price = price;
    this.checkIn = checkIn;
    this.checkOut = checkOut;
}

Помогите мне, пожалуйста.Спасибо всем:)

1 Ответ

0 голосов
/ 15 марта 2019

Вы не передаете description в качестве аргумента в Order конструкторе

Ваш конструктор Order имеет 6 аргументов, в то время как вы передаете 5 аргументов внутрь btnSubmit.setOnClickListener() проверьте его

Другая проблема была currentBeach.setCheckIn(checkInTV.getText().toString()) и currentBeach.setCheckOut(checkOutTV.getText().toString(), когда этот метод возвращал void , в то время как вам нужно передать значение String в Order конструктор

ОБРАЗЕЦ КОДА

btnSubmit.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            new Database(getBaseContext()).addToCart(new Order(
                    menuID,
                    currentBeach.getName(),
                   "description",// pass descriptiion here
                    currentBeach.getPrice(),
                    checkInTV.getText().toString(),
                    checkOutTV.getText().toString())
            ));
            Intent intent = new Intent(details.this, Cart.class);
            startActivity(intent);

        }
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...