我正在开发一个示例应用程序,以了解表中的循环数据应该如何工作。
我面临的下一个挑战是如何在点击特定行时获取数据。
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>
简单程序
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);
}
}
}
我能够循环100行数据,范围从
我在第0行
我在第1行
我在第2行
...
...
我排在第99行
但是,有没有办法获取我在点击行时设置的数据?
答案 0 :(得分:1)
我认为你需要这样的东西:
tr = new TableRow(this);
tr.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
TableRow t = (TableRow) view;
TextView firstTextView = (TextView) t.getChildAt(i);
String firstText = firstTextView.getText().toString();
}
});
答案来源: How do I get values from a dynamically created android TableRow?
How to get selected row object from Table in Android?
如果它会帮助你 - 投票给这个答案。我需要提高我在Stackoverflow上的声誉:)