gpt4 book ai didi

java - 根据 Spinner 1 中的选择动态更新 Spinner2

转载 作者:行者123 更新时间:2023-11-29 06:24:44 28 4
gpt4 key购买 nike

在使用此代码(改编自 here )时,出现以下错误:

The constructor ArrayAdapter(new AdapterView.OnItemSelectedListener(){}, int, String[]) is undefined

任何人都可以帮助纠正这个问题吗?谢谢

private void setDynamicSpinnerBE() {
beSpinner = (Spinner) findViewById(R.id.spBE);
final String[] itemsSpinner2;
lensSpinner.setOnItemSelectedListener(new OnItemSelectedListener() {

public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
Integer focalLength = (Integer) parent.getAdapter().getItem(
position);
itemsSpinner2 = getBellowsExtension(focalLength, maxBellows,
precision);

ArrayAdapter<CharSequence> beAdapter = new ArrayAdapter<CharSequence>(
this, android.R.layout.simple_spinner_item,
itemsSpinner2);
beAdapter
.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
beSpinner.setAdapter(beAdapter);

}

public void onNothingSelected(AdapterView<?> parent) {
beSpinner.setAdapter(null);
}
}

);
...
}

最佳答案

在新的 ArrayAdapter 的构造函数中的以下行:

ArrayAdapter<CharSequence> beAdapter = new ArrayAdapter<CharSequence>(this,

this 指向您所在的 OnItemSelectedListener 类的当前实例,而不是父 View ,这就是问题发生的地方,因为 ArrayAdapter 没有匹配的构造函数。您应该尝试使用 MyParentView.this(其中 MyParentView 是您所在 View 的名称)来传递适当的实例。

关于java - 根据 Spinner 1 中的选择动态更新 Spinner2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4492003/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com