注意:我不是说在选择微调器上的下拉列表时显示的单选按钮。
下面是适当的代码片段。。。几点:
-
这段代码在widget的构造函数中,widget是Spinner的子类
-
value是一个对象实例的数组(在创建小部件时传递)
-
没有XML资源;所有小部件都是动态创建的
-
Q: 我错过了什么?在我看来,我缺少了微调器的某些属性,这导致单选按钮也显示在微调器的文本部分。
--剪贴码--
public class ChoiceGroupImpl extends Spinner implements OnItemSelectedListener {
public ChoiceGroupImpl(Activity activity, WidgetContainer container, Value widget, AttributeImpl attributes, Object[] value, int selected) {
...
adapter = new ArrayAdapter<CharSequence>(activity, R.layout.simple_spinner_dropdown_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
for (int i = 0; i < value.length; i++)
adapter.add(value[i].toString());
if (attributes.isReadonly())
setEnabled(false);
setAdapter(adapter);
setSelection(selected);
setPrompt(adapter.getItem(selected));
setOnItemSelectedListener(this);
...
}
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
setPrompt(adapter.getItem(position));
((ToolkitImpl) Toolkit.getInstance()).hiddenCommand(container, "SelectionChanged");
}
...