В моем коде содержатся данные, извлеченные из бэкэнда синтаксического анализа, с использованием parsequeryadapter. На основе полученного текста мой код отображает некоторые изображения в списке, которые являются в основном кнопками с пользовательскими фонами и некоторым текстом.ListItemClick не работает в ListFragment с ParseQueryAdapter
Проблема в том, что метод onListItemClick, похоже, вообще не называется. (Это может сработать, если оно вызвано)
Конструкция кода выглядит так: NavActivity содержит фрагмент, содержащий дочерний список, фрагментированный в XML.
Это метод getItemView в моем ParseQueryAdapter метод
@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, что делает другие компоненты, не фокусируемый, решит проблему, но это не помогает. Любая помощь была бы оценена