2012-01-19 7 views
1

foreachループでtextviewsを動的に作成し、インクリメンタル整数に基づいてIDを割り当て、後でtextviewのインスタンスとテキストを取得できるようにするにはそのIDを使用して、どうすればいいのですか?たとえば、次のようにIDを割り当て、連結された文字列を使用してTextViewのインスタンスを取得する

int my = 0; 

foreach (equip item in list) 
{ 
    TableRow tr = new TableRow(this); 

    tv = new TextView(this); 
    tv.Text = "Test"; 
    tv.Id = "Date" + my; //I want to make the ID the word Date + the current value of my 
    tr.AddView(tv); 
    tl.AddView(tr); 
    my++; 
} 

そして後で

TextView tv = (TextView)"Date" + my; 

は、演算子「私はテレビにIDとを割り当てる行に「intに型文字列を変換できません」で上記の結果を行うことのTextViewのインスタンスを取得+をAndroid.Widget.Textview型のオペランドに適用することはできません "。

答えて

1

実際には正の整数でなければならないビューIDの使用は実際にはありません。数字の代わりに「日付」を付加してください。

タグを使用することもできます。あなたは(この場合は、あなたのTableLayoutが働くだろう)を探しているビューを含むビューへの参照を持っていると仮定すると、あなたはその後、彼らのタグによってビューを調べることができます

var textView = new TextView(this); 
textView.Tag = "TagName"; 

:あなたはこのような何かを行うことができます:

containingView.FindViewWithTag("TagName"); 
0

任意のアンドロイド要素のIDはintで、findViewByID(...)を使用して要素のルックアップを行うことができます。あなたは、ビュータグのような代わりのものを使う必要があります。

関連する問題