我在Android中有一个ListFragment,它有两个元素:
如果用户点击任务名称,它将在另一个片段中显示任务信息。但是,如果用户点击员工的姓名,则另一个片段将显示该员工的信息。
我上传了一张图片,以帮助您理解:http://imgur.com/mwhT3mR
我正在使用自定义适配器:
public View getView(int position, View convertView, ViewGroup parent) {
View currentView = convertView;
if (currentView == null) {
currentView = getActivity().getLayoutInflater().inflate(R.layout.bLoton_habitacion, parent, false);
}
setOnclickListeners(currentView, position);
return currentView;
}
private void setOnclickListeners(View currentView, int position) {
TextView taskView = (TextView) currentView.findViewById(R.id.taskView);
taskView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.i("TASK LISTING", "TASK VIEW CLICKED");
}
});
}
这可以按预期工作。如果用户单击taskView,则会显示消息“TASK VIEW CLICKED”。
但问题是我需要知道单击ListFragment的位置; onClick方法不会“看到”单击的元素。
有没有办法获取用户点击元素的位置?
答案 0 :(得分:0)
您可以将setOnclickListeners-method的position参数设为 final int,然后在onClick()