Динамически называть объекты на основе ввода EditText? - PullRequest
1 голос
/ 15 марта 2012

Я создаю финансовое приложение для Android, которое откроется и попросит пользователя добавить учетную запись.(Это всегда будет статичным на странице.) В главном упражнении рядом с кнопкой («Добавить учетную запись») будет поле EditText.Когда кнопка нажата, я хочу создать новый объект, и он будет сохранен в ArrayList.Список учетных записей (по мере их добавления) будет зациклен ниже (с соответствующими динамическими кнопками для редактирования учетной записи).Это моя практика / незаконченный код.Это очень сыро на данный момент!

String accountName = (Whatever is in EditText Box)

ArrayList<Accounts> accountList = new ArrayList<Accounts>();
int accountListSize = accountList.size();

(Button on Click)  {
    Account{accountName} = new Account();  // Not sure how to dynamically name
    accountList.add({accountName}) // Not sure how to dynamically name
}

// iterate through finance loop

for(int i = 0; i < accountList .size(); i++)
{
  // do stuff - Create Dynamicly Edit and Clear Buttons for each account
}

Одна из больших проблем, которые я пытаюсь преодолеть, это как динамически называть объект?

Я переосмысливаю этот процесс в целом и делаю его сложнее, чем должен быть?Я собираюсь создать класс для обработки специфики аккаунта.В конечном итоге мне придется хранить данные в хранилище - поэтому, может быть, мне следует отказаться от стиля, ориентированного на объекты, и использовать SQLite?Общие предпочтения?

Любые примеры кода были бы хороши, но я в основном надеюсь найти рекомендуемый метод, который я должен использовать.

1 Ответ

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

Я бы рекомендовал создать объект Account, который принимает имя в конструкторе.Например:

public class Account {
    private String name;

    public Account( String name ) {
        this.name = name;
    }

    // ... other account related methods here...
    public String getName() {
        return name;
    }
}

Затем в приведенном выше коде:

List<Account> accountList = new ArrayList<Account>();

(Button on Click)  {
    Account anAccount = new Account( accountName );  // accountName taken from text box.
    accountList.add( anAccount );  
}

Затем перебрать список учетных записей:

for( Account account : accountList ) {
    String name = account.getName();
    // .. do whatever you need to for each account...
}

Как только у вас появится этот списокОбъекты учетных записей, вы можете делать с ними все, что вам нужно, например, хранить их в БД SQLite и т. Д. ...

Надеюсь, это поможет ...

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