0
我有一個活動,其中包含一個TableLayout。我正在通過我在列表中的數據以編程方式填充此表格:查找列表項已填充單擊表格佈局行:
我需要做的是讓每一行都可點擊,當它是點擊時,我需要在列表中找到相應的項目,這樣我就可以獲得額外的數據出來吧,這是我的onCreate
代碼:
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.reports_list_activity_layout);
application = (SGRaportManagerAppObj)getApplication();
reportsRepository = application.reportsRepository.getReportsRepository();
TableLayout table = (TableLayout) findViewById(R.id.tableReportsList);
table.setStretchAllColumns(true);
table.setShrinkAllColumns(true);
for (Report tempReport : reportsRepository)
{
TableRow row = new TableRow(this);
row.setClickable(true);
TextView tvName = new TextView(this);
tvName.setText(tempReport.getName());
tvName.setGravity(Gravity.CENTER_HORIZONTAL);
tvName.setTextColor(getResources().getColor(R.color.my_black));
row.addView(tvName);
TextView tvPath = new TextView(this);
tvPath.setText(tempReport.getPath());
tvPath.setGravity(Gravity.CENTER_HORIZONTAL);
tvPath.setTextColor(getResources().getColor(R.color.my_black));
row.addView(tvPath);
row.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v)
{
Map<String, String> map = new HashMap<String, String>();
map.put(Report.JSON_KEY_ID,);
}
});
table.addView(row);
}
}
所以我需要這裏被點擊行的時候,我需要找到它在列表中,並得到被點擊表格中,該報告的ID和放入Map對象中傳遞前言。 有沒有人知道這是如何做到的?
謝謝。
是的,我想到了一些這樣的事情,但我認爲,有沒有辦法執行此操作沒有第三方對象。 – 2013-03-05 11:53:41
實際上,我們可以@EmilAdz,我們需要拿出MyTableRow類來擴展TableRow類,然後添加一個Report類型的對象和一個方法來獲取和設置它.. – 2013-03-05 13:08:59
這看起來像我的解決方案尋找,我會嘗試,並接受你的答案,如果這個工程。你可能有一個這樣的事情嗎? – 2013-03-05 13:35:22