Java-按微调器更改微调器的值

Java-按微调器更改微调器的值,java,android,Java,Android,我试图使一个微调器(2)更改另一个微调器(1)的内容 我当前在第二个微调器的数组适配器中遇到一个错误“错误:(28,57)错误:无法推断ArrayAdapter的类型参数” 这是我的密码: 导入android.support.v7.app.app活动; 导入android.os.Bundle; 导入android.view.view; 导入android.widget.AdapterView; 导入android.widget.ArrayAdapter; 导入android.widget.Spi

我试图使一个微调器(2)更改另一个微调器(1)的内容

我当前在第二个微调器的数组适配器中遇到一个错误“错误:(28,57)错误:无法推断ArrayAdapter的类型参数”

这是我的密码:

导入android.support.v7.app.app活动;
导入android.os.Bundle;
导入android.view.view;
导入android.widget.AdapterView;
导入android.widget.ArrayAdapter;
导入android.widget.Spinner;
公共类详细信息窗体扩展了AppCompatActivity{
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.details_表单);
最终微调器carBrand=(微调器)findViewById(R.id.carBrand);
字符串[]项=新字符串[]{“本田”、“日产”、“丰田”};
ArrayAdapter=新的ArrayAdapter(这个,android.R.layout.simple\u微调器\u下拉菜单\u项,项);
carBrand.setAdapter(适配器);
carBrand.setOnItemSelectedListener(新的AdapterView.OnItemSelectedListener(){
@凌驾
已选择公共视图(AdapterView父视图、视图视图、整型位置、长id){
字符串carBrand=parent.getSelectedItem().toString();
if(卡伯兰等于(“日产”)){
最终微调器模型=(微调器)findViewById(R.id.model);
字符串[]模型=新字符串[]{“S14”、“R34”、“240SX”};
ArrayAdapter modeladapter=新的ArrayAdapter(这是android.R.layout.simple\u微调器\u下拉菜单\u项,模型);
model.setAdapter(modeladapter);
}否则如果(卡布兰等于(“本田”)){
微调器模型=(微调器)findViewById(R.id.model);
字符串[]模型=新字符串[]{“Civic”、“NSX”、“Accord”};
ArrayAdapter modeladapter=新的ArrayAdapter(这是android.R.layout.simple\u微调器\u下拉菜单\u项,模型);
model.setAdapter(modeladapter);
}否则,如果(卡布兰等于(“丰田”)){
微调器模型=(微调器)findViewById(R.id.model);
字符串[]模型=新字符串[]{“Supra”、“AE86”、“GT86”};
ArrayAdapter modeladapter=新的ArrayAdapter(这是android.R.layout.simple\u微调器\u下拉菜单\u项,模型);
model.setAdapter(modeladapter);
}
}
@凌驾
未选择公共无效(AdapterView父级){
}
});
任何帮助都将不胜感激。

更改您的代码

发件人:

        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id){
            String carBrand = parent.getSelectedItem().toString();
            if (carBrand.equals("Nissan")) {
                final Spinner model = (Spinner) findViewById(R.id.model);
                String[] models = new String[]{"S14", "R34", "240SX"};
                ArrayAdapter<String> modeladapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_dropdown_item, models);
                model.setAdapter(modeladapter);

            } else if (carBrand.equals("Honda")) {
                Spinner model = (Spinner) findViewById(R.id.model);
                String[] models = new String[]{"Civic", "NSX", "Accord"};
                ArrayAdapter<String> modeladapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_dropdown_item, models);
                model.setAdapter(modeladapter);
            } else if (carBrand.equals("Toyota")) {
                Spinner model = (Spinner) findViewById(R.id.model);
                String[] models = new String[]{"Supra", "AE86", "GT86"};
                ArrayAdapter<String> modeladapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_dropdown_item, models);
                model.setAdapter(modeladapter);
            }
        }
        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id){
            String carBrand = parent.getSelectedItem().toString();
            if (carBrand.equals("Nissan")) {
                final Spinner model = (Spinner) findViewById(R.id.model);
                String[] models = new String[]{"S14", "R34", "240SX"};
                ArrayAdapter<String> modeladapter = new ArrayAdapter<>(YourActivity.this, android.R.layout.simple_spinner_dropdown_item, models);
                model.setAdapter(modeladapter);

            } else if (carBrand.equals("Honda")) {
                Spinner model = (Spinner) findViewById(R.id.model);
                String[] models = new String[]{"Civic", "NSX", "Accord"};
                ArrayAdapter<String> modeladapter = new ArrayAdapter<>(YourActivity.this, android.R.layout.simple_spinner_dropdown_item, models);
                model.setAdapter(modeladapter);
            } else if (carBrand.equals("Toyota")) {
                Spinner model = (Spinner) findViewById(R.id.model);
                String[] models = new String[]{"Supra", "AE86", "GT86"};
                ArrayAdapter<String> modeladapter = new ArrayAdapter<>(YourActivity.this, android.R.layout.simple_spinner_dropdown_item, models);
                model.setAdapter(modeladapter);
            }
        }
@覆盖
已选择公共视图(AdapterView父视图、视图视图、整型位置、长id){
字符串carBrand=parent.getSelectedItem().toString();
if(卡伯兰等于(“日产”)){
最终微调器模型=(微调器)findViewById(R.id.model);
字符串[]模型=新字符串[]{“S14”、“R34”、“240SX”};
ArrayAdapter modeladapter=新的ArrayAdapter(这是android.R.layout.simple\u微调器\u下拉菜单\u项,模型);
model.setAdapter(modeladapter);
}否则如果(卡布兰等于(“本田”)){
微调器模型=(微调器)findViewById(R.id.model);
字符串[]模型=新字符串[]{“Civic”、“NSX”、“Accord”};
ArrayAdapter modeladapter=新的ArrayAdapter(这是android.R.layout.simple\u微调器\u下拉菜单\u项,模型);
model.setAdapter(modeladapter);
}否则,如果(卡布兰等于(“丰田”)){
微调器模型=(微调器)findViewById(R.id.model);
字符串[]模型=新字符串[]{“Supra”、“AE86”、“GT86”};
ArrayAdapter modeladapter=新的ArrayAdapter(这是android.R.layout.simple\u微调器\u下拉菜单\u项,模型);
model.setAdapter(modeladapter);
}
}
至:

        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id){
            String carBrand = parent.getSelectedItem().toString();
            if (carBrand.equals("Nissan")) {
                final Spinner model = (Spinner) findViewById(R.id.model);
                String[] models = new String[]{"S14", "R34", "240SX"};
                ArrayAdapter<String> modeladapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_dropdown_item, models);
                model.setAdapter(modeladapter);

            } else if (carBrand.equals("Honda")) {
                Spinner model = (Spinner) findViewById(R.id.model);
                String[] models = new String[]{"Civic", "NSX", "Accord"};
                ArrayAdapter<String> modeladapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_dropdown_item, models);
                model.setAdapter(modeladapter);
            } else if (carBrand.equals("Toyota")) {
                Spinner model = (Spinner) findViewById(R.id.model);
                String[] models = new String[]{"Supra", "AE86", "GT86"};
                ArrayAdapter<String> modeladapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_dropdown_item, models);
                model.setAdapter(modeladapter);
            }
        }
        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id){
            String carBrand = parent.getSelectedItem().toString();
            if (carBrand.equals("Nissan")) {
                final Spinner model = (Spinner) findViewById(R.id.model);
                String[] models = new String[]{"S14", "R34", "240SX"};
                ArrayAdapter<String> modeladapter = new ArrayAdapter<>(YourActivity.this, android.R.layout.simple_spinner_dropdown_item, models);
                model.setAdapter(modeladapter);

            } else if (carBrand.equals("Honda")) {
                Spinner model = (Spinner) findViewById(R.id.model);
                String[] models = new String[]{"Civic", "NSX", "Accord"};
                ArrayAdapter<String> modeladapter = new ArrayAdapter<>(YourActivity.this, android.R.layout.simple_spinner_dropdown_item, models);
                model.setAdapter(modeladapter);
            } else if (carBrand.equals("Toyota")) {
                Spinner model = (Spinner) findViewById(R.id.model);
                String[] models = new String[]{"Supra", "AE86", "GT86"};
                ArrayAdapter<String> modeladapter = new ArrayAdapter<>(YourActivity.this, android.R.layout.simple_spinner_dropdown_item, models);
                model.setAdapter(modeladapter);
            }
        }
@覆盖
已选择公共视图(AdapterView父视图、视图视图、整型位置、长id){
字符串carBrand=parent.getSelectedItem().toString();
if(卡伯兰等于(“日产”)){
最终微调器模型=(微调器)findViewById(R.id.model);
字符串[]模型=新字符串[]{“S14”、“R34”、“240SX”};
ArrayAdapter modeladapter=新的ArrayAdapter(YourActivity.this,android.R.layout.simple\u微调器\u下拉菜单\u项,模型);
model.setAdapter(modeladapter);
}否则如果(卡布兰等于(“本田”)){
微调器模型=(微调器)findViewById(R.id.model);
字符串[]模型=新字符串[]{“Civic”、“NSX”、“Accord”};
ArrayAdapter modeladapter=新的ArrayAdapter(YourActivity.this,android.R.layout.simple\u微调器\u下拉菜单\u项,模型);
model.setAdapter(modeladapter);
}否则,如果(卡布兰等于(“丰田”)){
微调器模型=(微调器)findViewById(R.id.model);
字符串[]模型=新字符串[]{“Supra”、“AE86”、“GT86”};
ArrayAdapter modeladapter=新的ArrayAdapter(YourActivity.this,android.R.layout.simple\u微调器\u下拉菜单\u项,模型);
model.setAdapter(modeladapter);
}
}
YourActivity
是您的
activity
类名。此更改是必要的,因为在
OnItemSelectedListener
中,
表示侦听器的对象,它的类型与
上下文
不同,您需要
上下文
activity
的对象引用来调用
数组IDapter
构造函数。此解决方案应该适合您。

更改您的代码

发件人:

        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id){
            String carBrand = parent.getSelectedItem().toString();
            if (carBrand.equals("Nissan")) {
                final Spinner model = (Spinner) findViewById(R.id.model);
                String[] models = new String[]{"S14", "R34", "240SX"};
                ArrayAdapter<String> modeladapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_dropdown_item, models);
                model.setAdapter(modeladapter);

            } else if (carBrand.equals("Honda")) {
                Spinner model = (Spinner) findViewById(R.id.model);
                String[] models = new String[]{"Civic", "NSX", "Accord"};
                ArrayAdapter<String> modeladapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_dropdown_item, models);
                model.setAdapter(modeladapter);
            } else if (carBrand.equals("Toyota")) {
                Spinner model = (Spinner) findViewById(R.id.model);
                String[] models = new String[]{"Supra", "AE86", "GT86"};
                ArrayAdapter<String> modeladapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_dropdown_item, models);
                model.setAdapter(modeladapter);
            }
        }
        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id){
            String carBrand = parent.getSelectedItem().toString();
            if (carBrand.equals("Nissan")) {
                final Spinner model = (Spinner) findViewById(R.id.model);
                String[] models = new String[]{"S14", "R34", "240SX"};
                ArrayAdapter<String> modeladapter = new ArrayAdapter<>(YourActivity.this, android.R.layout.simple_spinner_dropdown_item, models);
                model.setAdapter(modeladapter);

            } else if (carBrand.equals("Honda")) {
                Spinner model = (Spinner) findViewById(R.id.model);
                String[] models = new String[]{"Civic", "NSX", "Accord"};
                ArrayAdapter<String> modeladapter = new ArrayAdapter<>(YourActivity.this, android.R.layout.simple_spinner_dropdown_item, models);
                model.setAdapter(modeladapter);
            } else if (carBrand.equals("Toyota")) {
                Spinner model = (Spinner) findViewById(R.id.model);
                String[] models = new String[]{"Supra", "AE86", "GT86"};
                ArrayAdapter<String> modeladapter = new ArrayAdapter<>(YourActivity.this, android.R.layout.simple_spinner_dropdown_item, models);
                model.setAdapter(modeladapter);
            }
        }
@覆盖
已选择公共视图(AdapterView父视图、视图视图、整型位置、长id){
字符串carBrand=parent.getSelect