多个微调器 android 相互依赖
multiple spinner android depend on each other
我有 3 个微调器,第一个微调器是 txt_kategori
;
第二 txt_kondisi
;
第三 txt_penanganan
;第二个取决于第一个,第三个取决于第二个输入,这是我的代码
txt_kategori.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<>(view.getContext(), android.R.layout.simple_spinner_item, condition[position]);
spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // The drop down view
txt_kondisi.setAdapter(spinnerArrayAdapter);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
txt_kondisi.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<>(view.getContext(), android.R.layout.simple_spinner_item, handling[position]);
spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // The drop down view
txt_penanganan.setAdapter(spinnerArrayAdapter);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
问题是java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.Context android.view.View.getContext()' on a null object reference
在 ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<>(view.getContext(), android.R.layout.simple_spinner_item, handling[position]);
使用ActivityName.this
代替view.getContext()
ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<>(view.getContext(), android.R.layout.simple_spinner_item, condition[position]);
改为
ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<>(ActivityName.this, android.R.layout.simple_spinner_item, condition[position]);
我有 3 个微调器,第一个微调器是 txt_kategori
;
第二 txt_kondisi
;
第三 txt_penanganan
;第二个取决于第一个,第三个取决于第二个输入,这是我的代码
txt_kategori.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<>(view.getContext(), android.R.layout.simple_spinner_item, condition[position]);
spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // The drop down view
txt_kondisi.setAdapter(spinnerArrayAdapter);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
txt_kondisi.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<>(view.getContext(), android.R.layout.simple_spinner_item, handling[position]);
spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // The drop down view
txt_penanganan.setAdapter(spinnerArrayAdapter);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
问题是java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.Context android.view.View.getContext()' on a null object reference
在 ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<>(view.getContext(), android.R.layout.simple_spinner_item, handling[position]);
使用ActivityName.this
代替view.getContext()
ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<>(view.getContext(), android.R.layout.simple_spinner_item, condition[position]);
改为
ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<>(ActivityName.this, android.R.layout.simple_spinner_item, condition[position]);