2014-01-29 98 views
0

我“试图”制作一个android应用程序。我试图让这个当我创建一个微调代码中的无法访问的代码

微调IF ... ELSE突然显示“错误消息” Unreachable code

代码:

Spinner localSpinner = (Spinner)findViewById(R.id.spinner); 

ArrayAdapter localArrayAdapter = new ArrayAdapter(this,android.R.layout.simple_spinner_item, this.arr); 

localArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 

localSpinner.setAdapter(localArrayAdapter); 

localSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() 

{ 

public void onItemSelected(AdapterView<?> parent, View v, int pos, long id) 
    { 
    if (pos == 0) 
    { 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab31)).setVisibility(View.VISIBLE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab32)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab33)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab34)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab35)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab36)).setVisibility(View.GONE);   
    } 
    do 
    { 
     return; 
     if (pos == 1) 
     { 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab31)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab32)).setVisibility(View.VISIBLE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab33)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab34)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab35)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab36)).setVisibility(View.GONE); 
     return; 
     } 
     if (pos == 2) 
     { 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab31)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab32)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab33)).setVisibility(View.VISIBLE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab34)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab35)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab36)).setVisibility(View.GONE); 
     return; 
     } 
     if (pos == 3) 
     { 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab31)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab32)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab33)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab34)).setVisibility(View.VISIBLE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab35)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab36)).setVisibility(View.GONE); 
     return; 
     } 
     if (pos == 4) 
     { 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab31)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab32)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab33)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab34)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab35)).setVisibility(View.VISIBLE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab36)).setVisibility(View.GONE); 
     return; 
     } 
    } 

    while (pos != 5); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab31)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab32)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab33)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab34)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab35)).setVisibility(View.GONE); 
     ((LinearLayout)MainKasama.this.findViewById(R.id.tab36)).setVisibility(View.VISIBLE); 
    } 

    public void onNothingSelected(AdapterView<?> parent) {} 
}); 

我有一个问题我代码

代码:

import android.app.AlertDialog.Builder; 

final AlertDialog.Builder Builder = new AlertDialog.Builder(this); 

有错误消息AlertDialog cannot be resolved to a type如何解决这个错误

谢谢你回答我的问题

回答

2
do 
{ 
    return; // remove this return 
    if (pos == 1) 
0

通过@Pulkit塞西答案是正确的,但他没有提供任何理由,为什么你要删除return。您可能错误地在该处插入了return,或者您可能不知道return会执行什么操作。我正在考虑后者,并提供解释。

只要编译器以任何编程语言获得return,它立即退出循环,并且不执行下面的所有语句。这就是为什么你得到无法访问的代码android在微调

0

其中,在您的行为中,此代码是: 最终AlertDialog.Builder Builder = new AlertDialog.Builder(this);

检查它是否在侦听器或其他地方,分配“context = this;” in oncreate or onresume of your activity

AlertDialog.Builder的“this”可能不是上下文