У меня есть следующий макет:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<GridView
android:id="@+id/grid"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentTop="true"
android:numColumns="auto_fit"
android:verticalSpacing="5dip"
android:horizontalSpacing="2.5dip"
android:columnWidth="100px"
android:stretchMode="columnWidth"
android:gravity="center"
android:listSelector="@drawable/transparent"
android:padding="5dip"
android:scrollbarStyle="outsideOverlay"
android:clickable="true" />
</RelativeLayout>
Теперь я использую собственный Адаптер, который раздувает мои собственные представления и устанавливает их в качестве элементов в виде сетки, и устанавливаю слушателя на щелчки в виде сетки.1004 *
GridView grid = (GridView) findViewById(R.id.grid);
grid.setAdapter(new ProductAdapter(getApplicationContext(), products));
grid.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
...
}
});
Проблема в том, что слушатель не стреляет, если я нажимаю на одну из ячеек в виде сетки.Если я использую трекпад для перемещения по сетке и нажимаю трекпад, слушатель стреляет.Может быть, есть какой-то другой вид, который захватывает щелчок?Мой пользовательский вид состоит из LinearLayout с ImageView и TextView, который я прочитал, что надувание макета для gridView вызвало проблему в некоторых местах.
Как сделать элементы сетки активными для щелчка?
Редактировать Нет разницы между надуванием макета в моем адаптере или просто созданием одного представления и возвратом этогодля мобильного телефона.