android ListVie
新学习了android的ListView。
昨天明明都是按视频里面的代码写出来的,别人的能执行就我的不行。
编译也没有错,但是就是执行的时候老是出错。就是进不去那个页面,说是页面崩溃,然后就关闭了
测试的时候发现,只要我继承的不是listView就没有错,后来再测的时候发现,一执行setListAdapter就不行。
最后实在是头晕了,网上的同学们都没有我这个错误,我就纳闷了。到底我错哪里了,肯定是很简单的错误,或者说就不是一个错误。
否则是不会网上没有参考的。
后来参考晚上的程序,终于找到了原因.
1.继承了listActivty后,不需要setContentView()
2. ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_expandable_list_item_1,strs);
这句话里的android.R.layout.simple_expandable_list_item_1中android不可以少。它设置了ListView的样式。是安卓内置的风格。
简单的效果如图:
注意,要完成上面这个效果,不需要xml文件。
其完成步骤如下:
1。新建一个Class,然后继承ListActivity类
2。不要设置setContentView
3。设置你想放什么值
4。用这个值,新建一个adapter
5。绑定这个adapter到listVIew上
finish! 执行即可!
其他的代码都是多余的,不用理会。
public class Sim01 extends ListActivity{
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
// setContentView(R.layout.sim01);
String[] strs = {"你好","2","3","4","5"};
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_expandable_list_item_1,strs);
setListAdapter(adapter);
}
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
// TODO Auto-generated method stub
super.onListItemClick(l, v, position, id);
System.out.println("id-------------------------------------"+id);
System.out.println("position---------------------------" + position);
}
}
当然,上面这个只是一个简单的例子,还可以自定义更加好看的listew。比如说:
http://rd.189works.com/article-36502-2.html
这个文档里面的就有很好的例子。
另外,我始终有一个苦恼的地方就是,安卓的doc文档,就是可以看哪个函数的参数有多少个,分别是干什么的,在哪里看啊?
我一直都没找见,在SDK里面搜索出来的index.html都不是我想要找的,然后eclipse里面又不帮我自动显示,烦死了。