ListView不会滚动.我如何解决它?

Lis*_*nne 3 android listview scroll

我在Linearlayout中有一个ListView.listview有一个自定义的cursoradapter.一切正常,但ListView不滚动.

任何建议超过欢迎!! 谢谢.毛里齐奥

这是MainActivity的XML

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <Button
        android:id="@+id/buttonAdd"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal"
        android:text="Aggiungi" />

    <ListView
        android:id="@+id/list"  
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

这是java代码的相关部分.

public class MainActivity extends Activity  {
    private DatabaseHelper db=null;
    private Cursor tabellaCursor=null;
    private ListAdapter adapter; 

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        int[] to = new int[] {R.id.name_entry};
        db = new DatabaseHelper(this);
        tabellaCursor=db.getWritableDatabase().rawQuery("SELECT _id, colonna1, colo      nna2, colonna3 FROM tabella ORDER BY _id", null);
        ListAdapter adapter=new MyAdapter(this, R.layout.list_example_entry, tabe     llaCursor, new String[]{"colonna1"},to);
        ListView lt = (ListView)findViewById(R.id.list); 
        lt.setAdapter(adapter); 
        Button addbtn=(Button)findViewById(R.id.buttonAdd);
        addbtn.setOnClickListener(new OnClickListener()
        {public void onClick(View v){add(); }
        });
}
Run Code Online (Sandbox Code Playgroud)

Erc*_*can 9

ListViews布局参数是"wrap_content".当您向litview添加新项目时,它将展开.因此它不会滚动.如果你把它设置为"match_parent"它肯定会开始滚动.并且不要忘记一个视图只有当它的内容(孩子们查看什么)大小比它大时才滚动.