📅  最后修改于: 2020-09-29 02:23:27             🧑  作者: Mango
Android ListView是一个视图,其中包含项目组并显示在可滚动列表中。 ListView是通过导入android.widget.ListView类实现的。 ListView是默认的可滚动视图,它不使用其他滚动视图。
ListView使用适配器类,该类将数据源中的内容(例如字符串数组,数组,数据库等)添加到ListView。适配器在AdapterView和其他视图(ListView,ScrollView等)之间桥接数据。
让我们实现一个简单的listview示例。
ListView项目的结构
首先,我们需要将ListView组件从面板拖放到activity_main.xml文件中。
文件:activity_main.xml
在布局文件夹中创建一个额外的mylist.xml文件,其中包含在listview中显示的视图组件。
文件:mylist.xml
现在,通过创建字符串数组将数据列表放置在strings.xml文件中。
文件:strings.xml
ListView
- Android
- Java
- Php
- Hadoop
- Sap
- Python
- Ajax
- C++
- Ruby
- Rails
- .Net
- Perl
在Java类中,我们需要使用listview的setAdapter()方法将适配器添加到listview。
文件:MainActivity.java
package listview.example.com.listview;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
ListView listView;
TextView textView;
String[] listItem;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView=(ListView)findViewById(R.id.listView);
textView=(TextView)findViewById(R.id.textView);
listItem = getResources().getStringArray(R.array.array_technology);
final ArrayAdapter adapter = new ArrayAdapter(this,
android.R.layout.simple_list_item_1, android.R.id.text1, listItem);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView> adapterView, View view, int position, long l) {
// TODO Auto-generated method stub
String value=adapter.getItem(position);
Toast.makeText(getApplicationContext(),value,Toast.LENGTH_SHORT).show();
}
});
}
}
输出量