我收到此错误:
java.lang.IllegalArgumentException: Can't have a viewTypeCount < 1
我敢肯定,我确切知道是什么原因造成的,但是我不知道如何解决它。
我的应用程序从数据库中加载用户朋友。当用户至少有1个朋友可以放入列表视图时,就可以了。当用户是全新用户并且还没有朋友时,该应用程序将崩溃,因为listview的计数为0。
这仅仅是错误处理的情况吗?
如果我没有发布所有必要的相关代码,请告诉我!
这是我的适配器:
public class MyAdapter extends ArrayAdapter<HashMap<String, String>> {
Context context;
int resourceId;
LayoutInflater inflater;
private Context mContext;
@Override
public int getViewTypeCount() {
return getCount();
}
@Override
public int getItemViewType(int position) {
return position;
}
ArrayList<HashMap<String, String>> items;
public MyAdapter (Context context, int resourceId, ArrayList<HashMap<String, String>> items)
{
super(context, resourceId, items);
mContext = context;
this.items =items;
inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
@Override
public View getView(int position, View convertView, ViewGroup parent){
final ViewHolder holder;
if (convertView == null){
convertView = inflater.inflate(R.layout.list_item, null);
holder = new ViewHolder();
holder.fbphoto = (ImageView)convertView.findViewById(R.id.fbphoto);
holder.name = (TextView)convertView.findViewById(R.id.name);
convertView.setTag(holder);
} else {
holder = (ViewHolder)convertView.getTag();
}
final HashMap<String,String> item = (HashMap<String,String> ) items.get(position);
if (item != null)
{
String facebookProfilePicUrl = "https://graph.facebook.com/"+item.get(TAG_FACEBOOKID)+"/picture?width=150&height=150";
Picasso.with(mContext)
.load(facebookProfilePicUrl)
.placeholder(R.drawable.no_image)
.into(holder.fbphoto);
holder.name.setText(item.get(TAG_USERNAME));
}
return convertView;
}
public class ViewHolder
{
ImageView fbphoto;
TextView name;
}
}
我认为您错过了ViewTypeCount的观点。您应该在列表中返回“不同视图类型”的数量。这对于回收列表内的视图很重要。
成像您有2种类型的Listitems,一种具有白色背景,一种具有黑色背景。当您以ViewTypeCount返回2时,Listview知道就可以了,这里有2种Listitems,并且不会在getView视图回收中混淆它们。
所以只需使用:
public int getViewTypeCount() {
return 1;
}
或根本不重写该方法。
葡萄牙语:java.lang.IllegalArgumentException jsf composite componente composto jsf com dataTable do primefaces tabela-padrao.xhtml 使用组件/Usando o组件 我有一个例外/Ocorreu esta Exceção! 葡萄牙人:Oque estou fazendo de er
我们刚刚将我们的应用程序从Hazelcast 3.8.0升级到了3.10.1。 我们收到一条错误消息:“键不能是数据类型!”在HazelCast中访问数据时。 我百分之百肯定我们使用的“键”是一个字符串。代码段如下所示: 抛出错误的代码行是: 设置字符串的代码行之间没有任何内容 而击打的那条线:( 因此,看起来“TransactionalMApproxySupport”的属性“SerializeK
好的,首先是代码(它非常简单): 我不是疯子的下一个例子是邮差的回复(chrome): 并在完整错误日志的末尾: 例外情况 org.springframework.web.util.NestedServletException:请求处理失败;嵌套的异常为java.lang.IllegalArgumentException:“none”不包含“/”org.springframework.web.se
我正在尝试表单,其中包括: 普通输入字段 在控制器中设置选项的单选按钮(稍后可能来自数据库) 复选框,其选项也在控制器中设置 选择也在控制器中设置的字段 方法1采用方法1。 如果验证失败,如何在post之后以表单形式再次呈现这些值? 是否也必须像在GET方法中一样设置POST方法中的列表中的值?
NestedServletException:请求处理失败;嵌套异常是java.lang.IllegalArgumentException:页面不能为空!
问题内容: 在我们的hibernate项目中,使用java bean模式对实体进行编码。在我们的代码中,有很多地方有人忘记了设置变量的设置,但由于NOT NULL字段而导致异常。 是否有人在使用构建器来构建其实体或使其不可变? 我正在尝试找到一种不是Java bean模式样式的有效模式。 谢谢 问题答案: 如果使Bean不可变,则必须使用字段级访问,并且这附带了它自己的一系列问题,在此进行了详细讨