我有一个奇怪的问题。当选择来自微调器的项目时,我需要做一些事情。
这是我的代码:
language = (Spinner) findViewById(R.id.current_language_text);
ArrayAdapter adapter = new ArrayAdapter(this,
com.Orange.R.layout.my_spinner_textview, languages);
adapter.setDropDownViewResource(com.Orange.R.layout.multiline_spinner_dropdown_item);
language.setAdapter(adapter);
language.setSelection(Integer.valueOf(language_id) - 1);
language.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) {
System.out.println("position "+position);
Toast.makeText(Settings.this, "Hello Toast",Toast.LENGTH_SHORT).show();
}
@Override
public void onNothingSelected(AdapterView<?> parentView) {
// your code here
}
});
问题是没有调用onItemSelectedListener
。我将System.out.println
放在onItemSelected()
中,但我没有在LogCat中获取它。我尝试使用Toast
,但我得到了同样的效果,它没有出现。每次我从微调器中选择一个项目时,在LogCat中我都会收到此警告:
Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@2b1dabd0
知道为什么没有调用onItemSelectedListener吗?
答案 0 :(得分:1)
您是否在manifest.xml中添加了活动
<activity android:name=".YourActivity" />
答案 1 :(得分:0)
添加类似的内容。
example=spinnerdistrics.getItemAtPosition(position).toString();