如何在Android中从微调器中删除4和5个索引
您好,在下面的代码中,我实现了一个微调器。我从Api中获取字符串并添加到arraylist,然后显示一个微调器 现在从微调器列表中删除4和5个索引,然后显示微调器 这给了我一个错误如何在Android中从微调器中删除4和5个索引,android,spinner,Android,Spinner,您好,在下面的代码中,我实现了一个微调器。我从Api中获取字符串并添加到arraylist,然后显示一个微调器 现在从微调器列表中删除4和5个索引,然后显示微调器 这给了我一个错误 java.lang.IndexOutOfBoundsException:索引:4,大小:1 if (name.equals("sales_stage")) { TypeDetails typeDetails = desFie
java.lang.IndexOutOfBoundsException:索引:4,大小:1
if (name.equals("sales_stage")) {
TypeDetails typeDetails = desFields1.getType();
ArrayList<PickListValues> pickListValues = typeDetails.getPicklistValues();
for (PickListValues pickListValues1 : pickListValues) {
value = pickListValues1.getValue();
label=pickListValues1.getLabel();
sales_stagenames.add(value);
PickListValues pickListValues2 = new PickListValues(value, label);
pickListSalesStage.add(pickListValues2);
final ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(
getContext(),R.layout.spinner_item,sales_stagenames){// dataAdapter.setDropDownViewResource(android.R.borderdashboard.simple_spinner_dropdown_item);
//spinnerlocation.setAdapter(dataAdapter);
@Override
public boolean isEnabled(int position){
if(position == 0)
{
// Disable the first item from Spinner
// First item will be use for hint
// spinnerlocation.setPrompt("Select");
return false;
}
else
{
return true;
}
}
@Override
public View getDropDownView(int position, View convertView,
ViewGroup parent) {
View view = super.getDropDownView(position, convertView, parent);
TextView tv = (TextView) view;
if(position+1 == 0){
// Set the hint text color gray
// spinnerdepartment.setVisibility(View.GONE);
// spinnerdepartment.setVisibility(View.GONE);
tv.setTextColor(Color.GRAY);
}
else {
tv.setTextColor(Color.BLACK);
}
return view;
}
};
// ArrayAdapter<String> dataAdapter = new ArrayAdapter<>(getContext(), android.R.borderdashboard.simple_spinner_item, taskTypes);
spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinnersalesstage.setAdapter(spinnerArrayAdapter);
sales_stagenames.remove(4);
spinnerArrayAdapter.notifyDataSetChanged();
@Override
public boolean isEnabled(int position){
if(position == 0)
{
// Disable the first item from Spinner
// First item will be use for hint
// spinnerlocation.setPrompt("Select");
return false;
}
else
{
return true;
}
}
@Override
public View getDropDownView(int position, View convertView,
ViewGroup parent) {
View view = super.getDropDownView(position, convertView, parent);
TextView tv = (TextView) view;
if(position+1 == 0){
// Set the hint text color gray
// spinnerdepartment.setVisibility(View.GONE);
// spinnerdepartment.setVisibility(View.GONE);
tv.setTextColor(Color.GRAY);
}
else {
tv.setTextColor(Color.BLACK);
}
return view;
}
};
// ArrayAdapter<String> dataAdapter = new ArrayAdapter<>(getContext(), android.R.borderdashboard.simple_spinner_item, taskTypes);
spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinnersalesstage.setAdapter(spinnerArrayAdapter);
}
if(name.equals(“销售阶段”)){
TypeDetails-TypeDetails=desFields1.getType();
ArrayList pickListValues=typeDetails.getPicklistValues();
对于(PickListValues pickListValues1:PickListValues){
value=pickListValues1.getValue();
label=pickListValues1.getLabel();
销售阶段。增加(价值);
PickListValues pickListValues2=新的PickListValues(值、标签);
添加(pickListValues2);
最终阵列适配器微调器阵列适配器=新阵列适配器(
getContext(),R.layout.spinner\u项,sales\u stagenames){//dataAdapter.setDropDownViewResource(android.R.borderdashboard.simple\u spinner\u dropdown\u项);
//喷丝头位置。设置适配器(数据适配器);
@凌驾
公共布尔值isEnabled(整型位置){
如果(位置==0)
{
//禁用微调器中的第一项
//第一项将用于提示
//喷丝头位置。设置提示(“选择”);
返回false;
}
其他的
{
返回true;
}
}
@凌驾
公共视图getDropDownView(int位置,视图转换视图,
视图组(父级){
视图=super.getDropDownView(位置、转换视图、父级);
TextView电视=(TextView)视图;
如果(位置+1==0){
//将提示文本设置为灰色
//喷丝头部门。设置可见性(视图。消失);
//喷丝头部门。设置可见性(视图。消失);
tv.setTextColor(彩色.灰色);
}
否则{
tv.setTextColor(Color.BLACK);
}
返回视图;
}
};
//ArrayAdapter dataAdapter=新的ArrayAdapter(getContext(),android.R.borderdashboard.simple\u微调器\u项,任务类型);
spinnerrayadapter.setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
喷丝头安装适配器(喷丝头安装适配器);
销售阶段名称。删除(4);
spinnerrayadapter.notifyDataSetChanged();
@凌驾
公共布尔值isEnabled(整型位置){
如果(位置==0)
{
//禁用微调器中的第一项
//第一项将用于提示
//喷丝头位置。设置提示(“选择”);
返回false;
}
其他的
{
返回true;
}
}
@凌驾
公共视图getDropDownView(int位置,视图转换视图,
视图组(父级){
v
value = pickListValues1.getValue();
label=pickListValues1.getLabel();
sales_stagenames.add(value);
ArrayList<String> salesstages=new ArrayList<>();
for(int i=0;i<= sales_stagenames.size();i++){
if((i!=4)&&(i!=5)) salesstages.add(sales_stagenames.get(i));}