列表视图中的空行

时间:2015-04-25 07:23:27

标签: android listview

每当我在数组中添加一个新值时,它会在listview中创建两行,其中一行为空。当我删除数组中的值时,该值被删除但两行仍然存在。

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.listcontact);               sharedPreferences=getSharedPreferences(preferences,Context.MODE_PRIVATE);
        for(int i=1;i<=n+1;i++) {
        String st=sharedPreferences.getString(String.valueOf(i), "");
        conact_list.add(st);
        }
ArrayAdapter adapter=new ArrayAdapter<String>(getBaseContext(),android.R.layout.simple_list_item_1,conact_list);
ListView cv= (ListView) findViewById(R.id.listview);
cv.setAdapter(adapter);
}

我检查过arraylist和arrayadapter都没有空值或额外的大小但是在列表视图中它显示如下: enter image description here

日志:

  

04-25 12:40:31.491 30892-30892 / com.symbols.syedibrahim.phonetrack   D / ERR:输入04-25 12:40:31.501   30892-30892 / com.symbols.syedibrahim.phonetrack D / ERR:+ 04-25   12:40:31.501 30892-30892 / com.symbols.syedibrahim.phonetrack D / ERR:   +93838394 04-25 12:40:31.501 30892-30892 / com.symbols.syedibrahim.phonetrack D / ERR:+947574748 04-25   12:40:31.501 30892-30892 / com.symbols.syedibrahim.phonetrack D / ERR:   +87478494 04-25 12:40:31.501 30892-30892 / com.symbols.syedibrahim.phonetrack D / ERR:aA   创建[93838394,947574748,87478494] 04-25 12:40:31.501   30892-30892 / com.symbols.syedibrahim.phonetrack D / ERR:lv3count3list   查看次数:0 04-25 12:40:31.501   30892-30892 / com.symbols.syedibrahim.phonetrack D / ERR:la

1 个答案:

答案 0 :(得分:1)

以下是我的意见:

案例1 :检查视图中与您的项目匹配的数据对象的数量。这意味着在for(int i=1;i<=n+1;i++中我们检查n的值,它是否等于视图中显示的数字项。 如果两个值相同,则应再次优先检查数据。

否则,转到案例2 :检查您的适配器,在适配器中,您应该检查getViewgetCount方法。 getCount返回的数字值必须与数据对象的数量相同。