这期内容当中小编将会给大家带来有关如何在Android中利用ListView实现一个内容无限循环显示效果,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
其实要达到无限循环显示,主要就是实现继承Adapter的类。
我这里用到的是BaseAdapter
private class MyAdapter extends BaseAdapter{
private Context context;
private String[] strs = null;
LayoutInflater inflater = null;
public MyAdapter(Context context){
this.context = context;
//listview中循环显示的数据
strs = new String[]{"0","1","2","3","4","5","6","7","8","9"};
inflater = LayoutInflater.from(context);
}
public MyAdapter(){
}
@Override
public int getCount() {
// TODO Auto-generated method stub
//返回int可以保存的最大值,此值为2147483647
return Integer.MAX_VALUE;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View view, ViewGroup parent) {
// TODO Auto-generated method stub
ViewHolder holder = null;
if(view == null){
holder = new ViewHolder();
view = inflater.inflate(R.layout.textview, null);
holder.text = (TextView) view.findViewById(R.id.text);
view.setTag(holder);
}else{
holder = (ViewHolder) view.getTag();
}
//strs[position%strs.length]实现listview中数据的循环
holder.text.setText(strs[position%strs.length]);
return view;
}
}
class ViewHolder{
public TextView text;
}
在onCreate方法中将adapter赋值给listview
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
listView = (ListView) findViewById(R.id.listview);
MyAdapter adapter = new MyAdapter(this);
listView.setAdapter(adapter);
listView.setSelection(Integer.MAX_VALUE/2+1);
//设置listview初始化以后的默认选中项,要不然listview初始化以后只能向上拖动而不能向下拖动。
}
上述就是小编为大家分享的如何在Android中利用ListView实现一个内容无限循环显示效果了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。