Android 如何在textview中单击文本行

Android 如何在textview中单击文本行,android,textview,Android,Textview,我有一个多行文本的文本视图,例如 这是一号线 这是2号线 这是3号线 我希望能够根据用户单击的行存储文本,即如果他们单击第2行,我希望存储“这是第2行” 我该怎么办 9月1日编辑: 我不确定可点击跨度解决方案将如何工作?我能够从我的文本视图中获取特定的文本行,例如,要获取第1行,我将使用: TextView tv = (TextView) view.findViewById(R.id.class_list); String selectedClass =(String)(tv).getText(

我有一个多行文本的文本视图,例如

这是一号线

这是2号线

这是3号线

我希望能够根据用户单击的行存储文本,即如果他们单击第2行,我希望存储“这是第2行”

我该怎么办

9月1日编辑:

我不确定可点击跨度解决方案将如何工作?我能够从我的文本视图中获取特定的文本行,例如,要获取第1行,我将使用:

TextView tv = (TextView) view.findViewById(R.id.class_list);
String selectedClass =(String)(tv).getText();
int l1start = tv.getLayout().getLineStart(1);
int l1end = tv.getLayout().getLineEnd(1);
String l1 = selectedClass.substring(l1start, l1end);
但是我看不出如何通过使用可点击的span来计算实际点击了哪个行号?

您可以使用span。为每一行设置不同的跨度,单击onClick时,将调用此可单击跨度的方法

看看这个