这是定义gridview的代码        private ViewGroup group;
  private ViewPager pager;
ArrayList<View> pageView;
        public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
        pageView = new ArrayList<View>();
  imageViews = new ImageView[pageTotal]; 
  LayoutInflater inflater = getLayoutInflater();
  for(int i = 0;i<pageTotal;i++){
  View view = inflater.inflate(R.layout.appsgrid,null);
  appsGridView = (AppsGrid) view.findViewById(R.id.apps);
  appsGridView.setAdapter(new AppsAdater(this, i));
  pageView.add(view);
  }
 
  group = (ViewGroup) inflater.inflate(R.layout.appsactivity,null);
  pager = (ViewPager) group.findViewById(R.id.guidePages);这是gridview的适配器
        @Override
  public View getView(final int position, View convertView, ViewGroup parent) {
  ItemViewTag item;
  if (convertView == null) {
  convertView = inflater.inflate(R.layout.items, null);
  item = new ItemViewTag(
  (ImageView) convertView.findViewById(R.id.grid_icon),
  (TextView) convertView.findViewById(R.id.grid_name));
  convertView.setTag(item);
  } else {
  item = (ItemViewTag) convertView.getTag();
  }
  final ResolveInfo info = AppsActivity.appsList
  .get(position + curpage * 15);
  item.icon.setImageDrawable(info.activityInfo.loadIcon(context
  .getPackageManager()));
  item.name.setText(info.activityInfo.loadLabel(context
  .getPackageManager())); 
  return convertView;
  }
 
  class ItemViewTag {
  protected ImageView icon;
  protected TextView name;
 
  public ItemViewTag(ImageView icon, TextView name) {
  this.icon = icon;
  this.name = name;
  }
  }

解决方案 »

  1.   


      <?xml version="1.0" encoding="utf-8"?>
     
         <LinearLayout  xmlns:android="http://schemas.android.com/apk/res/android"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_gravity="center"
             android:focusable="true"
             android:gravity="center"
             android:orientation="vertical" >
     
             <ImageView
                 android:id="@+id/grid_icon"
                 android:layout_width="75dip"
                 android:layout_height="70dip"
       >
             </ImageView>
     
             <TextView
                 android:id="@+id/grid_name"
                 android:layout_width="96dip"
                 android:layout_height="45dip"
                 android:layout_gravity="center"
                 android:layout_marginTop="1dp"
                 android:gravity="center"
                 android:maxLines="3"
                 android:singleLine="false"
                 android:textColor="@color/ivory"
                 android:clickable="false"
                 android:focusable="false"
                 android:textSize="18dp" >
             </TextView>
         </LinearLayout>
     
    这个是item的布局。
      

  2.   

    你有没有在getView里面给这些子元素(或者这些子元素自身有设clickListener),这会阻塞itemLonClick的。
    如果还是不行,试试给每个getView返回的元素设置Longclick