我有一个文件管理器。它以ListView
. 这些ListView
s 中的每一个都有一个自定义页脚 - 一个在 xml 文件中定义的按钮。按下按钮允许用户从“下载”目录中选择一个文件并将其复制到按下按钮的文件夹中。这是通过AlertDialog
. 因此,通过单击对话框中的选项,我得到了应该复制的文件的路径。
现在,如何获取按下按钮的位置?我可以在创建按钮时以某种方式在我的按钮中打包某种数据,以便稍后按下它时我可以识别它的初始位置吗?
我有一个文件管理器。它以ListView
. 这些ListView
s 中的每一个都有一个自定义页脚 - 一个在 xml 文件中定义的按钮。按下按钮允许用户从“下载”目录中选择一个文件并将其复制到按下按钮的文件夹中。这是通过AlertDialog
. 因此,通过单击对话框中的选项,我得到了应该复制的文件的路径。
现在,如何获取按下按钮的位置?我可以在创建按钮时以某种方式在我的按钮中打包某种数据,以便稍后按下它时我可以识别它的初始位置吗?
有很多方法可以实现这一目标。您可以按照 JaLoveAst1k 的建议为每个按钮创建一个单独的 OnClickListener。您还可以将一些信息添加到按钮的标签 (setTag()) 并在 onClick() 函数中取回它。另一种方法是有一个Hashtable<Button, String>
相对于按钮存储字符串信息的位置。
是的,像这样:
protected class CustomListener implements View.OnClickListener {
private String text;
public CustomListener(String text) {
this.text = text;
}
...
}
并将此侦听器设置为按钮,在构造函数中提供数据。