2012-03-14 4 views
1

Я использую макет таблицы со строками, которые поступают из базы данных SQLite, поэтому я добавляю строки, динамически добавляя представления в строку. Теперь я добавил и imageButton в каждой строке, которые обрабатывают редакцию строки и другие, которые добавляют ее в базу данных SQLite. Я бы хотел, если бы я пошел по правильному пути, поэтому, если есть способ добавить SetOnClickListener к каждому сгенерированному imageButton?dynamic setOnCLickListener

+0

Вы это делаете все неправильно (в предыдущем quetion я увидел, что Youre использования макета таблицы и заполнить строки из БД) ... Для вещей, как это использование ListView и адаптера ... Метод Onitemclick уже существует ... Используйте google и search listview + sqlite db sample – Selvin

+0

Это была мысль, если возможно изменить вид списка, чтобы иметь таблицы для большего количества столбцов, у меня есть собственный listView с БД, который используется для других данных в одном приложении. Идея заключалась в том, чтобы что-то вроде строк phpMyadmin в окне –

ответ

2

Я использовал этот код для добавления кнопки мыши события для динамически генерируемой кнопки

for (int position=0; position < parseInt; position++) 
     { 
      TableRow tableRow= new TableRow(this); 

      tableRow.setBackgroundColor(006400); 
//   ArrayList<Object> row = data.get(position); 


      TextView idText = new TextView(this); 
      idText.setText(Integer.toString(position + 1)); 
      idText.setGravity(Gravity.CENTER); 
      idText.setTextColor(Color.BLACK); 
      idText.setWidth(10); 
      idText.setHeight(30); 
      idText.setBackgroundResource(R.drawable.textbg); 
//   idText.setPadding(0, 0, 1,0); 

      tableRow.addView(idText); 



      //THE CLICK EVENT OF BUTTON 
      Button textOne = new Button(this); 
      textOne.setText("CLUB"); 
      textOne.setBackgroundResource(R.drawable.textbg); 
      textOne.setGravity(Gravity.CENTER); 
      textOne.setTextColor(Color.BLACK);//left top right bottom 
//   textOne.setPadding(2, 1, 1,0); 
//   textOne.setB; 

      textOne.setWidth(10); 
      textOne.setHeight(30); 

      textOne.setId(1+position); 
      tableRow.addView(textOne); 


//   textOne.setOnClickListener(this); 

      textOne.setOnClickListener(new OnClickListener() { 
       public void onClick(View arg0) { 
        // do something when the button is clicked 

        final Button button = (Button) arg0; 



System.out.println("button is clicked"); 



       }); 
+0

спасибо за идею, но если я не сейчас, сколько кнопок я должен создать, потому что это зависит от номера строк в базах, у меня нет динамического прослушивателя, что что я искал. Кстати, я решил, что это большая работа, сделайте это так ... Я уже разместил представление списка с помощью cursorAdapter и кнопку onitemclick для управления небольшим меню параметров. –

Смежные вопросы