Android 自定义微调器图像视图微调器标题中的默认显示
我使用文本和图像定制了Android 自定义微调器图像视图微调器标题中的默认显示,android,spinner,Android,Spinner,我使用文本和图像定制了微调器,查看其工作状态良好。图像仅在微调器选定项中可见,而不在所有下拉项中可见。所以问题是,图像显示在微调器标题视图上。请查看下图中我不想显示的红色边框区域。 自定义微调器适配器 public class RoomListArrayAdapter extends ArrayAdapter<RoomVO> { int groupid; Activity context; List<RoomVO> list; LayoutInflater infla
微调器
,查看其工作状态良好。图像仅在微调器选定项中可见,而不在所有下拉项中可见。所以问题是,图像显示在微调器标题视图上。请查看下图中我不想显示的红色边框区域。
自定义微调器适配器
public class RoomListArrayAdapter extends ArrayAdapter<RoomVO> {
int groupid;
Activity context;
List<RoomVO> list;
LayoutInflater inflater;
String mRoomName;
public RoomListArrayAdapter(Activity context, int groupid, int id, List<RoomVO> list,String mRoomName){
super(context,id,list);
this.list=list;
inflater=(LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
this.groupid=groupid;
this.mRoomName = mRoomName;
roomName = mRoomName;
}
public View getView(int position, View convertView, ViewGroup parent ){
View itemView = inflater.inflate(groupid,parent,false);
RoomVO roomVO = list.get(position);
ImageView imageView = (ImageView)itemView.findViewById(R.id.txt_spinner_image);
if(getRoomName().equalsIgnoreCase(roomVO.getRoomName())){
imageView.setVisibility(View.VISIBLE);
}else{
imageView.setVisibility(View.INVISIBLE);
}
TextView textView=(TextView)itemView.findViewById(R.id.txt_spinner_title);
textView.setText(list.get(position).getRoomName());
return itemView;
}
public String roomName = "";
public String getRoomName() {
return mRoomName;
}
public void setRoomName(String mRoomName) {
this.mRoomName = mRoomName;
}
public View getDropDownView(int position, View convertView, ViewGroup parent){
return getView(position,convertView,parent);
}
}
公共类RoomListArrayAdapter扩展了ArrayAdapter{
int-groupid;
活动语境;
名单;
充气机;
字符串mRoomName;
public RoomListArrayAdapter(活动上下文、int-groupid、int-id、列表、字符串mRoomName){
super(上下文、id、列表);
this.list=list;
充气器=(LayoutFlater)context.getSystemService(context.LAYOUT\u充气器\u服务);
this.groupid=groupid;
this.mRoomName=mRoomName;
roomName=mRoomName;
}
公共视图getView(int位置、视图转换视图、视图组父视图){
查看项目视图=充气机。充气(groupid,父项,false);
RoomVO RoomVO=list.get(位置);
ImageView ImageView=(ImageView)itemView.findViewById(R.id.txt\u微调器\u图像);
if(getRoomName().equalsIgnoreCase(roomVO.getRoomName())){
设置可见性(View.VISIBLE);
}否则{
imageView.setVisibility(视图.不可见);
}
TextView TextView=(TextView)itemView.findViewById(R.id.txt\u微调器\u标题);
textView.setText(list.get(position.getRoomName());
返回项目视图;
}
公共字符串roomName=“”;
公共字符串getRoomName(){
返回mRoomName;
}
public void setRoomName(字符串mRoomName){
this.mRoomName=mRoomName;
}
公共视图getDropDownView(int位置、视图转换视图、视图组父视图){
返回getView(位置、转换视图、父级);
}
}
不清楚您想做什么。你能详细说明一下吗?@ValerioSantinelli你检查了附加的图像了吗?在图像中,我在spinner中设置了红色边框。该微调器标题显示带有图像的文本,但我希望仅在微调器标题文本中显示文本,且仅在微调器下拉视图中显示图像,而不是微调器标题。我希望你现在明白了。你可以检查一下旋转器是否关闭了。当它关闭时,您将ImageView设置为GONE,反之亦然。这可能会帮助您: