ListItemClick无法在ListFragment中使用ParseQueryAdapter

时间:2015-01-18 10:47:10

标签: android listview parse-platform android-listfragment

我的代码涉及使用parsequeryadapter显示从解析后端检索的数据。根据检索到的文本,我的代码在列表视图中显示一些图像,这些图像基本上是具有自定义背景和一些文本的按钮。

问题是onListItemClick方法似乎根本没有被调用。 (如果被调用它可能会有效)

代码构造如下: NavActivity包含一个片段,其中包含XML中定义的子列表片段。

这是我的ParseQueryAdapter中的getItemView方法

@Override
public View getItemView(ParseObject object, View v, ViewGroup parent) {

    if (v == null) {
        v = View.inflate(context, R.layout.post_item, null);
    }

    super.getItemView(object, v, parent);

    //find the elements here and set the value from the ParseObject returned
    TextView1 = (TextView) v.findViewById(R.id.NumberTxtView);    
    Holder = (LinearLayout) v.findViewById(R.id.feloniesList);

    if (object != null) {

        Holder.removeAllViewsInLayout();

        TextView1.setText(object.getString("comment"));

        JSONArray jsonArray = object.getJSONArray("incident");
        for (int i = 0; i < jsonArray.length(); i++) {
            //Create a new button
            Button button = new Button(getContext());
            String btnText = null;
            int resId = 0;
            try {
                //Get the string from the JSON Array
                String item = jsonArray.getString(i);
                button.setFocusable(false);
                button.setText(item);                    
            } catch (JSONException e) {
                e.printStackTrace();
            }

            Holder.addView(button, new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT));
        }
    }

    return v;
}

ListItemClick方法

@Override
    public void onListItemClick(ListView l, View v, int position, long id) {
        super.onListItemClick(l, v, position, id);
        feedObject = feedAdapter.getItem(position);
        mListener.onListItemClicked(feedObject.getObjectId());
    }

我阅读here,将其他组件视为不可调焦,将解决问题,但它没有帮助。任何帮助将不胜感激

1 个答案:

答案 0 :(得分:0)

我找到了答案,看起来焦点不仅适用于按钮/复选框,还适用于像Horizo​​ntalScrollViewer这样的元素。我有我的线性布局,我在其中添加了按钮,包含在水平滚动查看器中。删除所述元素后,单击函数正常工作。