2013-11-10 2 views
0

Привет, я использую TableLyout для отображения данных из моей базы данных (baza_kosztorys), у меня есть дата из трех столбцов (kosztorys_id, kosztorys_nazwa, inwestor) в tablerow (wiersz), я добавил кнопку (przycisk) также и я ставлю kosztorys_id как setText. Позже я могу gettext от кнопки, когда я нажимал на нее (это работает хорошо), но я бы хотел, чтобы clik tablerow и gettext из edittext, не используя кнопку.Как getText из edittext, содержащегося в tablerow

И это проблема, потому что gettext (kosztorys_id) из edittext не работает так же, как кнопка, так как я могу получить текст из edittext, когда я нажимаю tablerow ??

мой код.

package com.kosztorys; 

import android.app.Activity; 

public class NowePomieszczenie extends Activity implements OnClickListener{ 
    String Timie, Tnazwisko, Tmail; 
    SQLiteDatabase db; 
    TextView textview1,textview2,textview3, textview4, textview5; 
    Button przycisk; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.nowe_pomieszczenie); 
     db=openOrCreateDatabase("baza_kosztorys", MODE_PRIVATE, null); 
    } 

public void pokazdane(View v) 
    { 

    final Cursor c=db.rawQuery("SELECT * from kosztorys", null); 
    int count= c.getCount(); 
    c.moveToFirst(); 
    //definicja wygladu 

    final TableLayout wyglad = new TableLayout(getApplicationContext()); 
    wyglad.setVerticalScrollBarEnabled(true); 
    //definicja wiersza 
    TableRow wiersz = new TableRow(getApplicationContext()); 

    //dodanie napisu id nad kolumna id 
    TextView textview = new TextView(getApplicationContext()); 
    textview.setText("DOSTĘPNE KOSZTORYSY"); 
    textview.setTextColor(Color.BLUE); 
    textview.setTypeface(null, Typeface.BOLD); 
    textview.setPadding(20, 20, 20, 20); 
    wiersz.addView(textview); 

    wyglad.addView(wiersz); 
     for(Integer j=0; j<count; j++) 
     { 
      wiersz = new TableRow(getApplicationContext()); 
      wiersz.setClickable(true); 


      textview = new TextView(getApplicationContext()); 
       textview.setText(c.getString(c.getColumnIndex("kosztorys_id"))); 
       textview2 = new TextView(getApplicationContext()); 
       textview2.setText(c.getString(c.getColumnIndex("kosztorys_nazwa"))); 
      textview3 = new TextView(getApplicationContext()); 
       textview3.setText(c.getString(c.getColumnIndex("inwestor"))); 


        przycisk = new Button(getApplicationContext()); 
        przycisk.setText(c.getString(c.getColumnIndex("kosztorys_id"))); 
        wiersz.setTag(c.getString(c.getColumnIndex("kosztorys_id"))); 




     przycisk.setOnClickListener(new OnClickListener(){ 
      @Override 
      public void onClick(View v) { 
       //v.setBackgroundColor(Color.GRAY);  
       Button przycisk = (Button)v; 
        String buttonText = przycisk.getText().toString(); 
        setContentView(R.layout.nowe_pomieszczenie); 
       // String buttonText2 = c.getString(c.getColumnIndex("kosztorys_id")); 
       Toast.makeText(NowePomieszczenie.this, "wybrales kosztorys nr:"+buttonText, Toast.LENGTH_SHORT).show(); 
      } 
     }); 

      wiersz.setOnClickListener(new OnClickListener() { 
       public void onClick(View v) { 
      v.setBackgroundColor(Color.GRAY); 

       }  
      });  
     //textview.setPadding(20, 20, 20, 20); 
      textview2.setPadding(20, 20, 20, 20); 
      textview3.setPadding(20, 20, 20, 20); 
      przycisk.setPadding(20, 20, 20, 20); 

      wiersz.addView(textview); 
      wiersz.addView(textview2); 
      wiersz.addView(textview3); 
       wiersz.addView(przycisk); 
      wyglad.addView(wiersz); 

      c.moveToNext(); 
     } 
     setContentView(wyglad); 
     db.close(); 

    } 
+0

положить gettext в wiersz по щелчку? – Broak

+0

Да, я пытаюсь, но он не работает. Я не знаю, как я могу ссылаться на редактирование текста из wiersz.onClickListener() [link] (https://www.dropbox.com/s/2owvk3oscl2cyp8/Zrzut%20ekranu%202013-11-10%2023.30.21. png) – Empi

ответ

0

в .xml папке вашей деятельности, вы можете сделать ряд вызова методы, когда он щелкнул с помощью андроида: OnClick = «Pokazdane».

+0

Ofc я использую, но это не проблема, проблема в том, как я могу получить текст из edittext из строки таблицы, это мои попытки сделать это, но это не работает [link] (https: //www.dropbox .com/s/2owvk3oscl2cyp8/Zrzut% 20ekranu% 202013-11-10% 2023.30.21.png) – Empi

+0

Вы должны использовать onlick в текстовом представлении не на строкеTabel – user1928596

+0

нормально, но он будет работать, когда я clik на textview не tablerow. Я бы хотел нажать на tablerow и получить текст из edittext/textview – Empi

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