Android:在GridView中单独单击子项

时间:2011-03-07 12:18:29

标签: android

当我的应用启动时,这是在初始活动中。 gridview包含六个可点击的图标,我希望他们都可以进行不同的活动。我在我的应用程序中启动另一项操作的新活动毫无疑问。我最初创建了一个活动,即“联系我们”表单。我只希望其中一个图标转到该活动,但我无法找到一种方法来使其成为onItemClickListener回调为每个图标注册单独的点击并启动相应的活动;目前,无论我点击哪个图标,它们都会进入相同的活动。请参阅下面的代码:

    GridView gridview = (GridView) findViewById(R.id.gridview);
    gridview.setAdapter(new ImageAdapter(this));


    gridview.setOnItemClickListener(new OnItemClickListener() 
    {
        public void onItemClick(AdapterView<?> parent, View v, int position, long id) 
        {

             Intent myIntent = new Intent();
             myIntent.setClassName("com.beneast.main", "com.beneast.main.ContactUs");
             startActivity(myIntent);
            };
    });

我有点像这样做的菜鸟,因为你可以清楚地看到,这个应用程序正在开发,因为我学到了更多的东西。但感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

您需要使用int position方法中的onitemClick参数。 position参数是已单击的gridview中图标的位置。所以我会根据你的需要使用switch-case语句:

gridview.setOnItemClickListener(new OnItemClickListener(){         
public void onItemClick(AdapterView<?> parent, View v, int position, long id)                  
{
   switch(position)
    {
    case 0:               
   Intent myIntent = new Intent();              
   myIntent.setClassName("com.beneast.main", "com.beneast.main.ContactUs");                 
   startActivity(myIntent);
   break;

  case 1:
      Intent myIntent = new Intent();              
      myIntent.setClassName(X, Y);
      startActivity(myIntent);
      break;
    }
 };     
});

您将继续此操作以涵盖所有可能的情况,即gridview中的所有图标位置。