Android的 - GridView的项目点击打开所有布局(Android - GridView

2019-10-18 13:52发布

我有这个问题。 我有一个GridView,当我点击一个项目,它应该打开一个布局,但每个按钮我点击,打开每一个布局,如果我按后退按钮我需要按11倍。 我没有这个问题与旧版本我失去了代码。 请帮助!

public void onCreate(Bundle savedInstanceState)
  {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.list);
    GridView gridview = (GridView) findViewById(R.id.gv);
    gridview.setAdapter(new ImageAdapter(this));

    gridview.setOnItemClickListener(new OnItemClickListener() {
        public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
             switch(position)
                {
                case 0:               
                    Intent ammissione = (new Intent(List.this, Ammissione.class));             
                    startActivity(ammissione);

                case 1:
                    Intent organizzazione = (new Intent(List.this, Organizzazione.class));             
                    startActivity(organizzazione);

                case 2:
                    Intent notizie = (new Intent(List.this, Notizie.class));             
                    startActivity(notizie);

                case 3:
                    Intent percorsi = (new Intent(List.this, Percorsi.class));             
                    startActivity(percorsi);

                case 4:
                    Intent didattica = (new Intent(List.this, Didattica.class));             
                    startActivity(didattica);

                case 5:
                    Intent regolamenti = (new Intent(List.this, Regolamenti.class));             
                    startActivity(regolamenti);

                case 6:
                    Intent diploma = (new Intent(List.this, Diploma.class));             
                    startActivity(diploma);

                case 7:
                    Intent valutazione = (new Intent(List.this, Valutazione.class));             
                    startActivity(valutazione);

                case 8:
                    Intent perterritorio = (new Intent(List.this, PerTerritorio.class));             
                    startActivity(perterritorio);

                case 9:
                    Intent comunicazioni = (new Intent(List.this, Comunicazioni.class));             
                    startActivity(comunicazioni);

                case 10:
                    Intent europa = (new Intent(List.this, Europa.class));             
                    startActivity(europa);

                case 11: 
                    Intent ricerca = (new Intent(List.this, Ricerca.class));             
                    startActivity(ricerca);
                }


        }
    });
  }

Answer 1:

你缺少break语句进行switch case

添加break每之后case ,像这样...

case 0:               
   Intent ammissione = (new Intent(List.this, Ammissione.class));             
   startActivity(ammissione);
   break;

见switch语句



文章来源: Android - GridView item click opens all layouts