Je développe un exemple d'application pour comprendre comment les données de bouclage dans une table devraient fonctionner.Obtenir par programme des données de lignes sélectionnées
Les prochains défis auxquels je suis confronté est comment puis-je obtenir les données en tapant sur des lignes particulières.
XML
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_profile"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.singatour.touristattraction.ProfileActivity">
<ScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TableLayout
android:id="@+id/tlGuide"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left">
</TableLayout>
</ScrollView>
</LinearLayout>
programme simple
package com.singatour.touristattraction;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TableLayout;
import android.widget.TableRow;
import android.widget.TextView;
public class GuideActivity extends AppCompatActivity
{
TextView tvGuideName = null;
TableLayout tlGuide = null;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_guide);
tlGuide = (TableLayout) findViewById(R.id.tlGuide);
for(int i = 0; i < 100; i++)
{
TableRow rows = new TableRow(this);
TableRow.LayoutParams lp = new TableRow.LayoutParams(TableRow.LayoutParams.WRAP_CONTENT);
rows.setLayoutParams(lp);
tvGuideName = new TextView(this);
tvGuideName.setId(i);
tvGuideName.setText("I am in row " + i);
rows.addView(tvGuideName);
tlGuide.addView(rows, i);
rows.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
TableRow t = (TableRow) v;
TextView firstTextView = (TextView) t.getChildAt(0);
String firstText = firstTextView.getText().toString();
Log.d("GuideActivity", firstText);
}
});
}
}
}
Je suis en mesure de boucler un 100 lignes de données allant de
Je suis dans la ligne 0
Je suis en ligne 1
Je suis en ligne 2
..
..
Je suis dans la ligne 99
Cependant, est-il un moyen d'obtenir obtenir les données que j'avais mis sur écoutes sur la rangée?
FILET FERMÉ. RÉPONSE A ÉTÉ MISE À JOUR DANS MA QUESTION.
peut-être en train d'enregistrer un onClickListener sur le textview? Qu'est-ce que tu penses? – Lino