В основном у меня есть TableLayout с несколькими TableRows, каждая из которых содержит 5 ячеек (Name, Price, Count, IncreaseButton, DecreaseButton), а затем я написал функцию для возврата цены определенной строки, но я продолжаю получать исключение.
Это код:
private int getRowPrice(View target) //target is a Button
{
TableRow row = (TableRow) target.getParent();
TextView priceCell = (TextView) row.getChildAt(1);
String price = priceCell.getText().toString();
//The cell text may start with $ or another currency
if (price.startsWith(getString(R.string.currency)))
{
price = price.substring(getString(R.string.currency).length()).toString();
}
return Integer.getInteger(price); //Here I get a "java.lang.NullPointerException"
}
Если я Log.d () цена выводит правильное значение, и если я пытаюсь вернуть getInteger ("10"), который работаетхорошо, также отладчик классифицирует 'price' как строку.Поэтому я должен признать, что понятия не имею, почему эта ошибка повторяется.
И, пожалуйста, дайте мне знать, если есть лучший, менее подверженный ошибкам способ получить ячейку определенной строки)