Android 在按下按钮时传递数据

Android 在按下按钮时传递数据,android,android-listview,android-button,android-dialog,Android,Android Listview,Android Button,Android Dialog,我有一个文件管理员。它在列表视图中显示文件。每个ListViews都有一个自定义的页脚-一个在xml文件中定义的按钮。按下按钮允许用户从“下载”目录中选择一个文件,并将其复制到按下按钮的文件夹中。这是通过警报对话框实现的。因此,通过单击对话框中的选项,我可以得到一个应该复制的文件路径 现在,我如何获得按下按钮的位置?我是否可以在按钮创建时将某种数据打包到按钮中,以便以后按下按钮时可以识别其初始位置?是的,如下所示: protected class CustomListener implement

我有一个文件管理员。它在
列表视图中显示文件。每个
ListView
s都有一个自定义的页脚-一个在xml文件中定义的按钮。按下按钮允许用户从“下载”目录中选择一个文件,并将其复制到按下按钮的文件夹中。这是通过
警报对话框
实现的。因此,通过单击对话框中的选项,我可以得到一个应该复制的文件路径

现在,我如何获得按下按钮的位置?我是否可以在按钮创建时将某种数据打包到按钮中,以便以后按下按钮时可以识别其初始位置?

是的,如下所示:

protected class CustomListener implements View.OnClickListener {
    private String text;

    public CustomListener(String text) {
        this.text = text;
    }

            ...
}

并将此侦听器设置为按钮,在构造函数中提供数据。

有许多方法可以实现这一点。您可以按照JaLoveAst1k的建议为每个按钮创建一个单独的OnClickListener。您还可以向按钮的标记(setTag())添加一些信息,并将其返回onClick()函数。另一种方法是使用一个
哈希表
,在其中存储与按钮相关的字符串信息。

按下按钮允许用户从“下载”目录中选择一个文件,并将其复制到按下按钮的文件夹中您有一个按钮还是两个按钮?一个按钮。当您按下它时,一个AlertDialog会列出下载文件夹中的所有文件。当您单击其中一个文件时,它将被复制到您按下按钮的文件夹中。当您有按钮时,是否希望此文件(可能是在listview上单击的数据/路径/名称)显示在上一个位置?亲爱的Sharath,这是正确的。但我已经解决了这个问题,实际上我的实现方式略有不同,但我相信稍后我可能会回到您的解决方案(: