- #1
Smiles1
- 8
- 0
PLEASE HELP! How can I delete a flashcard from my ArrayList? My position never updates and it always deletes position 0. Please let me know if you need more code to examine. I've tried trouble shooting this to find the problem but I can't figure out how to fix it. It's bugging me so badly and I really want to understand it.
I've tried looking through stackOverflow for similar problems and have tried stepping through with the debugger.
Inside my flashCard Model
Inside my flashcard controller
Thank you for any hints or help! They are greatly appreciated!
I've tried looking through stackOverflow for similar problems and have tried stepping through with the debugger.
Inside my flashCard Model
Code:
public int getCurrentIndex(String displayText) {
int position = 0;
for (int i = 0; i < flashCards.size() - 1; i++) {
//Trying to see what's going on and why things aren't matching up
System.out.println("Display Text:" + displayText);
System.out.println(flashCards.get(i).getTextColor());
System.out.println(position);
if (flashCards.get(i).getTextColor().equals(displayText)) {
position = i;
break;
}
System.out.println(position);
}
return position;
}
//Does not work right, always deletes position zero.
public void deleteFlashCard(String displayText) {
this.flashCards.remove(getCurrentIndex(displayText));
index = index--;
//Looking to see what was deleted
System.out.println(this.flashCards.toString());
}
}
Inside my flashcard controller
Code:
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
public class FlashCardController {
private FlashCardListUI flashCardListUI;
private FlashCardList flashCardList;
FlashCardController(FlashCardListUI flashCardListUI, FlashCardList flashCardList) {
this.flashCardList = new FlashCardList();
this.flashCardListUI = new FlashCardListUI();
class NextFlashCardButtonListener implements ActionListener {
public void actionPerformed(ActionEvent ae) {
flashCardListUI.setCurrentFlashCard(flashCardList.getNextFlashCard().toString());
}
}
class AddButtonListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
flashCardList.putFlashCard(flashCardListUI.getCurrentFlashCard());
}
}
class BackButtonListener implements ActionListener {
//Is the problem here? If so, Why?
public void actionPerformed(ActionEvent e) {
flashCardListUI.setCurrentFlashCard(flashCardList.getPreviousFlashCard().toString());
//flashCardList.putFlashCard(flashCardListUI.getCurrentFlashCard());
}
}
class DeleteButtonListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
flashCardList.deleteFlashCard(flashCardListUI.getCurrentFlashCard());
}
}
flashCardListUI.nextFlashCardButtonListener(new NextFlashCardButtonListener());
flashCardListUI.addFlashCardButtonListener(new AddButtonListener());
flashCardListUI.backButtonListener(new BackButtonListener());
flashCardListUI.deleteButtonListener(new DeleteButtonListener());
}
}
Thank you for any hints or help! They are greatly appreciated!