2012-06-15 3 views
2

У меня этот кодне может быть решена с переменной

filethemeSpinner.setOnItemSelectedListener(new OnItemSelectedListener() { 
    public void onNothingSelected(AdapterView<?> parent) { 
    } 
    public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) { 
     int throwid = (int)id; 
     System.out.println("from onItemselected" +throwid); 
    } 
}); 

Я пытаюсь получить значение throwid переменной, создать глобальную переменную themerowid и я:

themerowid = throwid; 

Но у меня есть эта ошибка:

throwid cannot be resolved to a variable

Как я могу сделать, чтобы получить throwid значение?

Проблема заключается в том, что throwid не изменял значение, она всегда возвращает 0, я thik что код отверстия:

filethemeSpinner.setOnItemSelectedListener(new OnItemSelectedListener() { 
    public void onNothingSelected(AdapterView<?> parent) { 
    } 
    public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) { 
      throwid = (int)id; 
      System.out.println("from onItemselected" +throwid); 
    } 
}); 

не будет выполнена, поэтому я получаю 0 все время, есть ошибка в этом коде.

+2

определяют 'throwid' вне слушателя. Напишите 'int throwid;' перед 'setOnItemSelectedListener'? – GAMA

+0

где 'themerowid' в вашем фрагменте кода? – user1049280

ответ

0

. Похожым thowid не является видимым. Попробуйте это:

filethemeSpinner.setOnItemSelectedListener(new OnItemSelectedListener() { 
     public void onNothingSelected(AdapterView<?> parent) { 
     } 
     public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) { 
       themerowid = (int)id; 
       System.out.println("from onItemselected" + id); 
     } 
    }); 
0
public YOURActivty extend Activty{ 
    int themerowid; //<-------------------- 



     public void onCreate(Bundle savedInstanceState) { 
     ... 

    } 


public void xYZ() { 

    filethemeSpinner.setOnItemSelectedListener(new OnItemSelectedListener() { 
        public void onNothingSelected(AdapterView<?> parent) { 
        } 
        public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) { 
          int throwid = (int)id; 
          System.out.println("from onItemselected" +throwid); 
        } 
       }); 

    } 
} 
0

Declare throwid глобально ..... затем использовать его ...

int throwid 
    filethemeSpinner.setOnItemSelectedListener(new OnItemSelectedListener() { 
     public void onNothingSelected(AdapterView<?> parent) { 
     } 
     public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) { 
       throwid = (int)id; 
       System.out.println("from onItemselected" +throwid); 
     } 
    }); 
0

INT throwid; (вы shuld держать его в поле, потому что если вы» буду держать его в качестве локальной переменной вы должны объявить его как окончательный)

filethemeSpinner.setOnItemSelectedListener(new OnItemSelectedListener() { 
      public void onNothingSelected(AdapterView<?> parent) { 
      } 
      public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) { 
        throwid = (int)id; 
        System.out.println("from onItemselected" +throwid); 
      } 
     }); 
0

попробовать этот способ:

public class testingActivity extends Activity 
{ 

public int throwid; 
/** Called when the activity is first created. */ 

@Override  
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    ////YOUR CODE... 
      filethemeSpinner.setOnItemSelectedListener(new OnItemSelectedListener() { 
      public void onNothingSelected(AdapterView<?> parent) { 
      } 
      public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) { 
        throwid = (int)id; 
        System.out.println("from onItemselected" +throwid); 
      } 
     }); 
} 

} 
0

Определение throwId вне анонимного класса (слушатель) как так:

public class MyClass extends ... implements ... { 
    ... 
    ... 
    int throwId; 

    filethemeSpinner.setOnItemSelectedListener(new OnItemSelectedListener() { 
     public void onNothingSelected(AdapterView<?> parent) {} 

     public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) { 
      throwId = (int)id; 
      System.out.println("from onItemselected" +throwid); 
     } 
    }); 
} 
Смежные вопросы