1.android中,adapter怎么写
/** * 适配器示例 */public class SpeedWholeAdapter extends BaseAdapter { private HashMap
2.recyclerview复杂布局 的adapter怎么写
异同比较: 相同点:都可以实现垂直方向的滚动列表效果;都需要使用适配器(Adapter)不同点:ListView只能实现垂直滚动列表,但RecyclerView还可以实现水平、多列、跨列等复杂的滚动列表;RecyclerView不但需要Adapter,还必须有LayoutManager,用法更复杂一些。
总结:ListView能做到的,RecyclerView都能做到,反之则不行。RecyclerView用法比ListView复杂。
一般用法:ListView用法ListView listView = (ListView) findViewById(R.id.list_view);listView.setAdapter(new ArrayAdapter
3.android 里怎么用adapter写下拉菜单选择
所使用的工具:电脑开发工具:eclipse for Android , Android Studio用adapter 写下拉菜单需要我们自己进行自定义,具体步骤如下:1、自定义类,类成员与需要显示的字段一致;public class Manufacture {private String name ;public Manufacture(String name) {super();this.name = name;}public String getName() {return name;}public void setName(String name) {this.name = name;}}2、自定义adapter并继承自BaseAdapter实现相应方法,下面是贴出的代码示例:public class MnufactureAdapter extends BaseAdapter{private List mList;private Context context ;//创建有参构造,参数需要传入两个1.自定义类类型的List,上下文参数public MnufactureAdapter(List mList, Context context) {super();this.mList = mList;this.context = context;}//返回长度位所定义List的长度@Overridepublic int getCount() {return mList.size();}//返回位置为自定义list当前位置@Overridepublic Object getItem(int position) {return mList.get(position);}//返回条目的ID@Overridepublic long getItemId(int position) {return position;}//这里getView需方法需要重点说明和注意:@Overridepublic View getView(int position, View convertView, ViewGroup parent) {//创建一个LayoutInflater并传入上下文LayoutInflater linflater = LayoutInflater.from(context);//添加自定义item布局到convertView;(item内容和样式通过自定义方式实现)convertView = linflater.inflate(R.layout.spinner_item_layout, null);//初始化Item中控件TextView textView =(TextView) convertView.findViewById(R.id.manufacture_list);//设置控件显示内容textView.setText(mList.get(position).getName());return convertView;}}3、在activity中需要添加如下代码://初始化布局文件中的spinner Spinner mSpinner = (Spinner) findViewById(R.id.spinner1);//初始化自定义的List,并往里面添加数据List manufacture = new ArrayList();接着就是添加数据,在项目中我是添加的从网络上下载的数据解析之后进行添加的,具体的添加方式根据具体需要进行添加,我把自己的贴在下面供大家参考:for(int i = 0;i 评论0 0 0。
4.listview中baseadapter怎么写
ListView初步了解 在ListView的使用中,有时候还需要在里面加入按钮等控件,实现单独的操作。
也就是说,这个ListView不再只是展示数据,也不仅仅是这一行要来处理用户的操作,而是里面的控件要获得用户的焦点。读者可以试试用SimpleAdapter添加一个按钮到ListView的条目中,会发现可以添加,但是却无法获得焦点,点击操作被ListView的Item所覆盖。
这时候最方便的方法就是使用灵活的适配器BaseAdapter了。 使用BaseAdapter必须写一个类继承它,同时BaseAdapter是一个抽象类,继承它必须实现它的方法。
BaseAdapter的灵活性就在于它要重写很多方法,看一下有哪些方法。步骤一 List的使用数据源可以有多种形式,比如是一个数组,或者是一个list 其作用是使lisview中每一行显示出数据源的每一个元素的值。
比如ListView中每一个item只有一个控件 TextView 则list可以定义成一个字符串数组,或者一个ArrayList 。如果ListView中每一个item有很多个控件,则可以把多个控件的值类型定义成一个类如Item类 格式如下public class Item{ String name; String text; int number; int imageId; //省略setter和getter方法}则此时List定义成List 并且初始化为List
步骤二 编写需要ListView布局文件以及ListView中item的布局文件ListView布局文件的例子如下:activity所在的布局XML中只需要含有listview的控件,listview中每一行的item的具体布局则在另一个xml文件中<?xml version="1.0" encoding="utf-8"?>
同时在这个类里定一个成员变量mInflater和一个构造方法。layoutInflater的作用LayoutInflater的作用类似于findviewById() .不同在于LayoutInflater是用来找res/layout下的xml布局文件,并且实例化。
具体作用如下:1 对于一个没有载入或者想要动态载入的界面,都需要使用Layoutinflater.inflater() 来载入。2 对于已经载入的界面,就可以使用Activity.findViewById()方法来获取其中的界面元素。
获得layoutInflater实例的三种方式1 layoutinflater inflater = getLayoutInflater();2 LayoutInflater localinflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE)3 LayoutInflater inflater = LayoutInflater.from(context)这三种的本质都是调用context.getSystemService()获得实例之后可以通过实例调用该类的方法inflate 这个方法有一下几种的过载形式,返回值均为View对象.public View inflate (int resource, ViewGroup root) public View inflate (XmlPullParser parser, ViewGroup root) public View inflate (Xm。
转载请注明出处育才学习网 » adapter怎么写