[英]How do I call the onItemClick method from inside another class?
[背景信息:我是一名新手,正在学习在 Android Studio 中制作“待办事项”应用程序。 基本上,当用户单击待办事项列表中的任何项目时,我会弹出一个对话框,这使用户可以选择两个按钮来“删除或取消”他们单击的任何特定项目。 然后我想让那个删除按钮执行这个方法中的代码。]
我试图从我创建的对话框片段 class 中调用这个 onItemClick 方法(我在 MainActivity 中创建的)。 我不知道这些参数值是什么(似乎它们是自动生成的),但是当我想为删除按钮调用 onItemClick 方法时,Android Studio 要求我传递四个参数。 这是我试图调用的方法:
'''
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
items.remove(position);
adapter.notifyDataSetChanged();
FileHelper.writeData(items, this); }
'''
我在 MainActivity 中定义了这个方法,因为它里面的所有东西都是在那个 Activity 中创建和定义的(adapterview,items)。 FileHelper 是我制作的另一个 class。
我假设您正在使用该列表。 您可以在文档中查看每个 arguments 的更多信息(参见页面底部)。
AdapterView<?> parent
是您单击的 object 的父视图 - 如果使用ListView
,则此 object 将是该ListView
。View view
是您单击的实际视图。 例如,如果您有一个TextView
列表,然后单击其中一个,您将在此处获得该文本视图。int position
是列表中单击项目的 position(0 是第一项)。long id
是被点击项的 id,你通常在适配器中控制它。 因此,例如,如果您想检索被点击的元素,您可以在列表视图中使用getItemAtPosition(position)
来获取实际项目 object。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.