Android 在选择第一个纺纱机的基础上填充两个纺纱机
我试图根据第一个微调器的选择填充两个微调器,因此当我在第一个微调器中选择一个选项时,第二个微调器将填充相应的字符串数组。我是android新手,我找不到错误,我在if循环中的createFromResource上遇到了一个错误。这是我的密码:Android 在选择第一个纺纱机的基础上填充两个纺纱机,android,arrays,Android,Arrays,我试图根据第一个微调器的选择填充两个微调器,因此当我在第一个微调器中选择一个选项时,第二个微调器将填充相应的字符串数组。我是android新手,我找不到错误,我在if循环中的createFromResource上遇到了一个错误。这是我的密码: protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activit
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
Spinner spinner = (Spinner) findViewById(R.id.spinner);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
this, R.array.locations, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
Spinner spinner2 = (Spinner) findViewById(R.id.spinner2);
adapter = ArrayAdapter.createFromResource(
this, R.array.locations, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner2.setAdapter(adapter);
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
if(position==5) {
Spinner spinner2 = (Spinner) findViewById(R.id.spinner);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
R.array.startlocations, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner2.setAdapter(adapter);
}
else{
Spinner spinner2 = (Spinner) findViewById(R.id.spinner);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
R.array.destinations, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner2.setAdapter(adapter);
}
Toast.makeText(getBaseContext(), parent.getItemAtPosition(position) + " is selected", Toast.LENGTH_LONG).show();
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar Toolbar=(Toolbar)findViewById(R.id.Toolbar);
设置支持操作栏(工具栏);
微调器微调器=(微调器)findViewById(R.id.Spinner);
ArrayAdapter=ArrayAdapter.createFromResource(
这个,R.array.locations,android.R.layout.simple\u微调器\u项);
setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
旋转器。设置适配器(适配器);
喷丝器喷丝器2=(喷丝器)findViewById(R.id.spinner2);
adapter=ArrayAdapter.createFromResource(
这个,R.array.locations,android.R.layout.simple\u微调器\u项);
setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
喷丝头2.设置适配器(适配器);
spinner.setOnItemSelectedListener(新的AdapterView.OnItemSelectedListener(){
@凌驾
已选择公共视图(AdapterView父视图、视图视图、整型位置、长id){
如果(位置==5){
Spinner Spinner 2=(Spinner)findViewById(R.id.Spinner);
ArrayAdapter=ArrayAdapter.createFromResource(此,
R.array.startlocations、android.R.layout.simple\u微调器\u项);
setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
喷丝头2.设置适配器(适配器);
}
否则{
Spinner Spinner 2=(Spinner)findViewById(R.id.Spinner);
ArrayAdapter=ArrayAdapter.createFromResource(此,
R.array.destinations、android.R.layout.simple\u微调器\u项);
setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
喷丝头2.设置适配器(适配器);
}
Toast.makeText(getBaseContext(),parent.getItemAtPosition(position)+“已选中”,Toast.LENGTH_LONG.show();
}
@凌驾
未选择公共无效(AdapterView父级){
}
});
我想这是你的问题
试着用
ArrayAdapter.createFromResource(ActivityClassName.this,
R.array.destinations, android.R.layout.simple_spinner_item);
其中“ActivityClassName”是您的名字activity谢谢您,这似乎起到了作用!!!很简单,但我找不到它。再次感谢。对于将来的引用上下文变量是一个活动或应用程序,所以在引用内部类时,不要在内部类中使用“this”,因为它引用内部类本身,这会让您发疯
ArrayAdapter.createFromResource(ActivityClassName.this,
R.array.destinations, android.R.layout.simple_spinner_item);