android中listview中的适配器需要什么

android中listview中的适配器需要什么,android,Android,我学习android程序已经有几天了,但现在我想知道listview中适配器的用法。请帮助我理解这个主题。我正在学习的代码在下面 dictionaryListView.setAdapter(new BaseAdapter() { @Override public View getView(int position, View view, ViewGroup arg2) { if (view==null) {

我学习android程序已经有几天了,但现在我想知道listview中适配器的用法。请帮助我理解这个主题。我正在学习的代码在下面

       dictionaryListView.setAdapter(new BaseAdapter() {

        @Override
        public View getView(int position, View view, ViewGroup arg2) {
            if (view==null) {
                view=getLayoutInflater().inflate(R.layout.list_item, null);
            }
            TextView textView=(TextView) view.findViewById(R.id.listItemTextView);
            textView.setText(allWordDefinitions.get(position).word);

            return view;
        }

        @Override
        public long getItemId(int arg0) {
            // TODO Auto-generated method stub
            return 0;
        }

        @Override
        public Object getItem(int arg0) {
            // TODO Auto-generated method stub
            return null;
        }

        @Override
        public int getCount() {
            // TODO Auto-generated method stub
            return allWordDefinitions.size();
        }
    });

    dictionaryListView.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> arg0, View view, int position,
                long arg3) {
            Intent intent =new Intent(DictionaryListActivity.this, WordDefinitionDetailActivity.class);
            intent.putExtra("word", allWordDefinitions.get(position).word);
            intent.putExtra("definition", allWordDefinitions.get(position).definition);

            startActivity(intent);
        }
    });
dictionaryListView.setAdapter(新的BaseAdapter(){
@凌驾
公共视图getView(内部位置、视图视图、视图组arg2){
如果(视图==null){
view=GetLayoutFlater().充气(R.layout.list_项,空);
}
TextView TextView=(TextView)view.findViewById(R.id.listItemTextView);
setText(allWordDefinitions.get(position.word));
返回视图;
}
@凌驾
公共长getItemId(int arg0){
//TODO自动生成的方法存根
返回0;
}
@凌驾
公共对象getItem(int arg0){
//TODO自动生成的方法存根
返回null;
}
@凌驾
public int getCount(){
//TODO自动生成的方法存根
返回allWordDefinitions.size();
}
});
setOnItemClickListener(新的OnItemClickListener(){
@凌驾
public void onItemClick(适配器视图arg0、视图视图、内部位置、,
长arg3){
意向意向=新意向(DictionaryStactivity.this,WordDefinitionDetailActivity.class);
intent.putExtra(“word”,allWordDefinitions.get(position.word);
intent.putExtra(“定义”,allWordDefinitions.get(position.definition);
星触觉(意向);
}
});
这里的setadapter方法需要什么引用文档

适配器对象充当AdapterView和该视图的基础数据之间的桥梁。适配器提供对数据项的访问。适配器还负责为数据集中的每个项目创建一个视图

您正在使用一个
BaseAdapter
覆盖
getView
,在这里可以对自定义布局进行充气并返回一个视图对象

所以每一行都有一个文本视图

 @Override
        public View getView(int position, View view, ViewGroup arg2) {
            if (view==null) { // only when view in null inflate the layout
                view=getLayoutInflater().inflate(R.layout.list_item, null);
            }
            TextView textView=(TextView) view.findViewById(R.id.listItemTextView);
            // initialize the textview
            textView.setText(allWordDefinitions.get(position).word);
            // set text to textview
            // position is the index 

            return view; // return view
        }
getCount
返回列表的大小,即
returnallworddefinitions.size()。这表示listview中的行数

也读

你也应该考虑使用<代码> ViewHolder < /代码>模式。 引用文档

适配器对象充当AdapterView和该视图的基础数据之间的桥梁。适配器提供对数据项的访问。适配器还负责为数据集中的每个项目创建一个视图

您正在使用一个
BaseAdapter
覆盖
getView
,在这里可以对自定义布局进行充气并返回一个视图对象

所以每一行都有一个文本视图

 @Override
        public View getView(int position, View view, ViewGroup arg2) {
            if (view==null) { // only when view in null inflate the layout
                view=getLayoutInflater().inflate(R.layout.list_item, null);
            }
            TextView textView=(TextView) view.findViewById(R.id.listItemTextView);
            // initialize the textview
            textView.setText(allWordDefinitions.get(position).word);
            // set text to textview
            // position is the index 

            return view; // return view
        }
getCount
返回列表的大小,即
returnallworddefinitions.size()。这表示listview中的行数

也读

你也应该考虑使用<代码> ViewHolder < /代码>模式。

适配器对象充当AdapterView和 该视图的基础数据。适配器提供对数据的访问 项目。适配器还负责为每个项目创建一个视图 在数据集中

适配器负责为ListView(或其他基于ListView的类)中的每个项目创建视图,并使用您提供的数据填充视图

适配器对象充当AdapterView和 该视图的基础数据。适配器提供对数据的访问 项目。适配器还负责为每个项目创建一个视图 在数据集中


适配器负责为ListView(或其他基于AbsListView的类)中的每个项目创建视图,并使用您提供的数据填充视图。

在此处输入代码

如果没有适配器,要实现
ListView
功能,您需要: 在
滚动视图
组中创建
文本视图
。 然后,您必须为
TextView
的内容实现分页概念。 您还必须编写额外的代码来识别TextView中特定行上的单击事件


此处是了解的链接

在此处输入代码

如果没有适配器,要实现
ListView
功能,您需要: 在
滚动视图
组中创建
文本视图
。 然后,您必须为
TextView
的内容实现分页概念。 您还必须编写额外的代码来识别TextView中特定行上的单击事件


在这里,了解适配器的链接是获取数据并将其附加到布局中的控件的组件

getView()
每次创建列表项时,适配器中的此方法都将调用,并使用它将每个数据附加到特定控件中

getItemId()
此方法用于返回附加到列表项的每个数据的id,以便获取

ListView中的
onitemclick
事件中的此id

getItem
此方法类似于
getItemId
,但它返回对象本身


此方法
getCount
将返回适配器将为您创建的列表项的计数,并了解将为您调用
getView
方法的次数

适配器是获取数据并将其附加到布局中的控件的组件

getView()
每次创建列表项时,适配器中的此方法都将调用,并使用它将每个数据附加到特定控件中

getItemId()
此方法用于返回附加到列表项的每个数据的id,以便获取

ListVie中的
onitemclick
事件中的此id