-2

我相对来说是个菜鸟,一直在寻找,试图找出我的代码有什么问题。这是一个基本的列表视图,将被分解为子列表

   ListView localListView = (ListView)findViewById(2131361899);
    localListView.setAdapter(new ArrayAdapter(this, 2130903117, arrayOfString));
    localListView.setOnItemClickListener(new AdapterView.OnItemClickListener()
    {
//Start//
      public void onItemClick(AdapterView<?> paramAdapterView, View paramView, int paramInt, long paramLong)
      {
        String str = ((TextView)paramView).getText().toString();
        if (str.equalsIgnoreCase(ChapterList.this.getResources().getString(2131230721)))
          ChapterList.this.startActivity(new Intent(ChapterList.this, Foreword.class));
        while (true)
        {return;
        //The Error starts here//
        if (str.equalsIgnoreCase(ChapterList.this.getResources().getString(2131230723)))
        {
          ChapterList.this.startActivity(new Intent(ChapterList.this, Chapter1Section.class));
          continue;
        }
          //And ends here//
        if (str.equalsIgnoreCase(ChapterList.this.getResources().getString(2131230728)))
        {
          ChapterList.this.startActivity(new Intent(ChapterList.this, Chapter2Section.class));
          continue;
        }
        if (str.equalsIgnoreCase(ChapterList.this.getResources().getString(2131230745)))
        {
          ChapterList.this.startActivity(new Intent(ChapterList.this, Chapter3Section.class));
          continue;
        }
        if (str.equalsIgnoreCase(ChapterList.this.getResources().getString(2131230752)))
        {
          ChapterList.this.startActivity(new Intent(ChapterList.this, Chapter4Section.class));
          continue;
        }
        if (str.equalsIgnoreCase(ChapterList.this.getResources().getString(2131230759)))
        {
          ChapterList.this.startActivity(new Intent(ChapterList.this, Chapter5Section.class));
          continue;
        }
        if (str.equalsIgnoreCase(ChapterList.this.getResources().getString(2131230764)))
        {
          ChapterList.this.startActivity(new Intent(ChapterList.this, Chapter6Section.class));
          continue;
        }
        if (str.equalsIgnoreCase(ChapterList.this.getResources().getString(2131230765)))
        {
          ChapterList.this.startActivity(new Intent(ChapterList.this, Chapter7Section.class));
          continue;
        }
        if (str.equalsIgnoreCase(ChapterList.this.getResources().getString(2131230768)))
        {
          ChapterList.this.startActivity(new Intent(ChapterList.this, Chapter8Section.class));
          continue;
        }
        if (str.equalsIgnoreCase(ChapterList.this.getResources().getString(2131230778)))
        {
          ChapterList.this.startActivity(new Intent(ChapterList.this, Chapter9Section.class));
          continue;
        }
        if (!str.equalsIgnoreCase(ChapterList.this.getResources().getString(2131230722)))
          continue;
        ChapterList.this.startActivity(new Intent(ChapterList.this, Appendix.class));
        }
      }
4

1 回答 1

1

语句后面的代码return;将无法到达。在 while 循环块中,每条语句一次被评估一个。但是,在return;评估语句时,整个方法将控制权“返回”给调用方法,并且不会在该方法中执行更多代码。

于 2012-04-13T18:05:42.940 回答