簡體   English   中英

無法獲取Android表布局中動態添加的行的行ID

[英]Unable to get row id of dynamically added rows in table layout of android

這是我的代碼,用於動態添加表行,

for (int j = 0; j < list.size(); j++) {           


TableRow tableRow = new TableRow(getActivity());
        table_layout.addView(tableRow);
        tableRow.setLayoutParams(new TableRow.LayoutParams(
                TableRow.LayoutParams.MATCH_PARENT,
                TableRow.LayoutParams.WRAP_CONTENT));
        tableRow.setId(j);
        tableRow.setClickable(true);
        tableRow.setOnClickListener(tablerowOnClickListener);




TextView textView0 = new TextView(getActivity());
        textView0.setLayoutParams(new TableRow.LayoutParams(
                LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT, 1));
        textView0.setText(currencySymbol.get(j));
        textView0.setGravity(Gravity.CENTER_HORIZONTAL
                | Gravity.CLIP_VERTICAL);
        tableRow.addView(textView0);


        TextView textView1 = new TextView(getActivity());
        textView1.setLayoutParams(new TableRow.LayoutParams(
                LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT, 1));

        textView1.setGravity(Gravity.RIGHT);
        tableRow.addView(textView1);
}

這是onclicklistener

OnClickListener tablerowOnClickListener = new OnClickListener() {
    public void onClick(View v) {
        //GET TEXT HERE
        //String currenttext = ((TextView)v).getText().toString());
    Toast.makeText(getActivity(), "row selected" + View.getId , 30).show();

    }
};  

但是我沒有通過這種方法獲得行ID,我是在指這個問題, 也這個

您需要使用v.getId()來獲取OnClickListner內單擊視圖的ID。

取代這個

Toast.makeText(getActivity(), "row selected" + View,getId , 30).show();

通過這個

Toast.makeText(getActivity(), "row selected --> " + v.getId() , 30).show();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM