我在另一个布局中有一个文本视图,并且正在使用该引用生成多个文本视图。问题是我无法为点击侦听器将“标签”设置为这些文本视图。
这是我用于生成多个文本视图的代码
final CircularLayout circularLayout = findViewById(R.id.circular_layout);
circularLayout.setCapacity(wordShuffled.length());
for (int i = 0; i < wordShuffled.length(); i++) {
text = (TextView)
LayoutInflater.from(this).inflate(R.layout.number_text_view, null);
text.setText("" + tmp[i]);
circularLayout.addView(text);
text.setTag(String.valueOf(i));
// m_ll.addView(text);
tv.setTag(String.valueOf(i));
m_ll.addView(text);
}
这是包含该文本视图的布局
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/textLay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/colorAccent"
android:textSize="22sp"
android:textStyle="bold" />
我想在每个文本视图上执行点击操作
答案 0 :(得分:0)
出于循环创建onClickListener,将其设置为生成的textView。单击textView时,应检查标记并执行适当的操作。
final CircularLayout circularLayout = findViewById(R.id.circular_layout);
circularLayout.setCapacity(wordShuffled.length());
OnClickListener listener = new OnClickListener() {
//handle on click event
}
for (int i = 0; i < wordShuffled.length(); i++) {
...
textView.setTag(tag);
textView.setOnClickListener(listener);
...
}