2014-01-29 97 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」可能不是上下文