[英]How to get the name of textview included in linear layout in OnClickListener?
I am adding textviews dynamically to a linear layout and want to get the name of the textview clicked in OnClickListener of linear layout.This is the code: 我正在将文本视图动态添加到线性布局中,并希望获得在线性布局的OnClickListener中单击的文本视图的名称。这是代码:
m_lvSideIndex = (LinearLayout)ShowTheContacts1.this.findViewById(R.id.sideIndex);
TextView l_tempText = null;
for(int l_a = 0;l_a < m_arrayOfAlphabets.length;l_a++)
{
l_tempText = new TextView(ShowTheContacts1.this);
l_tempText.setGravity(Gravity.CENTER);
l_tempText.setTextSize(15);
l_tempText.setTextColor(getResources().getColor(R.color.black));
LayoutParams params = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, 1);
l_tempText.setLayoutParams(params);;
l_tempText.setText(m_arrayOfAlphabets[l_a]);
m_lvSideIndex.addView(l_tempText);
m_lvSideIndex.setTag(l_a);
}
m_lvSideIndex.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
String l_itemSelected = (String)v.toString(); //Want to get the name of textview selected here
});
Please help me.Thanks in advance. 请帮助我。谢谢。
将点击侦听器添加到每个文本视图,然后您将在onClick中将视图作为参数接收。
You can do with it the help of getTag() 您可以借助getTag()
first setTag() the value ie TextName 首先setTag()的值,即TextName
m_lvSideIndex.setTag(m_arrayOfAlphabets[l_a]);
m_lvSideIndex.setTag(l_a, R.id.sideIndex);
and get the value via getTag() 并通过getTag()获取值
m_lvSideIndex.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
String l_itemSelected = (String)v.getTag();
Integer l_position = (Integer)v.getTag(R.id.sideIndex);
});
OnClickListener works on TextView. OnClickListener可在TextView上使用。 Make sure you set Clickable property of TextView to true. 确保将TextView的Clickable属性设置为true。
((TextView)v.findviewbyTag(R.id.label)).getText(); ((TextView的)v.findviewbyTag(R.id.label))的getText();
I hope this work 我希望这项工作
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.