У меня есть действие, которое требует различных условных обновлений для TableLayout (делать / не показывать строки со значением '0', создавать новую позицию ... и т. Д.). У меня Dynamic TableLayout работает прекрасно, но, как вы можете себе представить, перестановки этого продолжают расти. Я хочу переместить различные методы управления TableRow в отдельный класс, но у меня возникли проблемы с переходом.
Первая проблема заключается в том, что когда я пытаюсь вызвать BuildTable.testTable();
из своей основной деятельности, он хочет, чтобы метод был статическим. Это имеет смысл, но когда я делаю testTable статическим, тогда я получаю жалобу "не могу сделать статическую ссылку на нестатический метод findViewById(int)
из типа Activity". Казалось, что я подошел очень близко к решению, когда последовал совету здесь , но он просто не совсем сложился. Мне нужна помощь ... и я буду искренне признателен за все, что вы можете предложить.
Я свел его к основам, приведенным ниже, только с одним вставленным TextView ... У меня есть:
public class BuildTable extends Activity {
public void testTable() {
TableLayout tl = (TableLayout)findViewById(R.id.InvoiceTable); // Find TableLayout defined in main.xml
TableRow trDivider = new TableRow(getParent());
TextView tvDivider = new TextView(getParent()); //Create a divider view between rows
tvDivider.setText("test");
trDivider.addView(tvDivider); //Add tvDivider to the new row
tl.addView(trDivider); //Add trDivider to the TableLayout
}