【发布时间】:2014-02-19 11:51:03
【问题描述】:
在列表视图中,我在每一行都有一个被截断的文本,因为它太长了。所以我在 textView 上设置了 setMovementMethod() 以使其可滚动。但是现在无法单击 ListView。我该如何解决这个问题?
下面是适配器的 getView() 方法。
@Override
public View getView(int position, View convertView, final ViewGroup parent) {
final ViewHolder holder;
if (convertView == null) {
convertView = mInflater.inflate(R.layout.list_row, null);
holder = new ViewHolder();
holder.nameLabel = (TextView) convertView.findViewById(R.id.name);
convertView.setTag(holder);
holder.nameLabel.setMovementMethod(ScrollingMovementMethod.getInstance());
} else {
holder = (ViewHolder) convertView.getTag();
}
return convertView;
}
【问题讨论】:
-
从适配器添加了 getView 方法。这与我在帖子中解释的没有太大区别。
-
如何检测列表视图的点击?
-
您的视图是否可点击? stackoverflow.com/q/6128219/693752
-
在活动中我使用这个:mListView.setOnClickListener()。只有当我没有触摸设置了 setMovemenMethod() 的 textView 时单击该行,它才有效。如果触摸是由文本视图进行的,我认为移动方法会拦截它而不是列表视图。
-
尝试添加属性addStatesFromChildren developer.android.com/reference/android/view/…
标签: android android-listview textview