2016-12-06 72 views
-1

我是新来的Android编程我试图实现一个微调,但我得到“无法解决符号”错误setOnItemSelectedListener,setDropDownViewResource和setAdapter。我很难过。我尝试添加更多进口产品,但他们没有做任何事情。Android Spinners - 无法解析符号 - setOnItemSelectedListener

这里是我的代码:

public class MainActivity extends AppCompatActivity implements OnItemSelectedListener { 
    public final static String EXTRA_MESSAGE = "com.example.FinalProject.MESSAGE"; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
    } 

    Spinner spinner = (Spinner) findViewById(R.id.spinner); 
    spinner.setOnItemSelectedListener(this); 

// Create an ArrayAdapter using the string array and a default spinner layout 

    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.verb_endings_array, android.R.layout.simple_spinner_item); 

// Specify the layout to use when the list of choices appears 

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

// Apply the adapter to the spinner 

    spinner.setAdapter(adapter); 

    public void onItemSelected(AdapterView<?> parent, View view, 
          int pos, long id) { 
     // An item was selected. You can retrieve the selected item using 
     // parent.getItemAtPosition(pos) 
    } 

    public void onNothingSelected(AdapterView<?> parent) { 
     // Another interface callback 
    } 

    /** Called when the user clicks the Send button */ 
    public void sendMessage(View view) { 
     Intent intent = new Intent(this, DisplayMessageActivity.class); 
     EditText editText = (EditText) findViewById(R.id.edit_message); 
     String message = editText.getText().toString(); 
     intent.putExtra(EXTRA_MESSAGE, message); 
     startActivity(intent); 
    } 
}  
+0

谢谢!它现在有效。 –

回答

2

移动这个

Spinner spinner = (Spinner) findViewById(R.id.spinner); 
spinner.setOnItemSelectedListener(this); 

的onCreate方法中,后外部声明微调,(你想为确保工作吧。 .. :))

private Spinner spinner; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    spinner = (Spinner) findViewById(R.id.spinner); 
    spinner.setOnItemSelectedListener(this); 
} 
+0

谢谢!它现在有效。 –