【问题标题】:Calling method from Activity inside an adapter从适配器内的 Activity 调用方法
【发布时间】:2015-03-16 19:18:07
【问题描述】:

大家好,这是一个相当愚蠢的问题,因为我很困惑。我想要做的是从我的适配器内的活动中调用一个方法(分享到 facebook)。

这是插图:

活动: postToFacebook(宠物狗); 包含狗列表的列表视图。

适配器: 我用来创建自定义视图以获得更好看的适配器。

问题是我想在 LinearLayout 上设置一个 onLongClickListener 来保存所有狗的信息(这样用户可以保存信息的任何部分)以共享到 facebook。

有没有办法做到这一点?

非常感谢!

【问题讨论】:

  • 请把代码给我们看看,让我们仔细看看

标签: android interface adapter


【解决方案1】:

如果我理解你的问题,那么你就做得不好

在您的活动中,您有一个包含狗信息的 ArrayList(或列表)

有点像

ArrayList<Pets> listDogs;

现在,你应该这样做(myListView 是你的 ListView obj)

myListView.setOnItemLongClickListener(new OnItemLongClickListener() {

        public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
                int pos, long id) {
                postToFacebook(listDogs.get(pos));
            return true;
        }
    }); 

通过这种方式,您可以获取所选元素的位置,并从活动而不是适配器中调用您的方法。

listDogs.get(pos) 

此行返回所选行的元素。

【讨论】:

    猜你喜欢
    • 2012-08-21
    • 2021-06-08
    • 2021-12-01
    • 2021-07-16
    • 1970-01-01
    • 1970-01-01
    • 2018-11-07
    • 1970-01-01
    相关资源
    最近更新 更多