ListView更改项目单击时的文本

idi*_*ish 3 android listview list

我有一个从textviews构建的列表视图.

如果用户单击项目列表,则单击项目的文本将被更改,我该怎么做?

我知道如何添加新项目,但更改其文本?我怎样才能做到这一点?

ol_*_*_er 7

首先,您需要将添加OnItemClickListener到您的ListView:

mMyListView.setOnClickListener(new OnItemClickListener(
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
    }
));
Run Code Online (Sandbox Code Playgroud)

OnItemClickListeneronItemClick方法中,有一个view参数.它包含已单击的ListView行.

使用该视图,您可以获取TextView然后更改文本:

public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
    TextView tv = (TextView) view.findViewById(R.id.your_text_view_id);
    tv.setText(...);
}
Run Code Online (Sandbox Code Playgroud)

如果ListView单元格只包含TextView,则可以安全地将视图直接转换为TextView:

public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
    TextView tv = (TextView) view;
    tv.setText(...);
}
Run Code Online (Sandbox Code Playgroud)


Rid*_*lly 5

您可以使用AdapterView.OnItemClickListener执行此操作.实施onItemClick(AdapterView<?> parent, View view, int position, long id)方法.在view你这里得到通过,是TextView点击的项目,所以它应该是足够的做

((TextView)view).setText("Hey, I've just been tapped on!");
Run Code Online (Sandbox Code Playgroud)