listview列表视图的使用
分类: Android 标签: listview的使用
2022-08-22 11:32:19 883浏览
listview的使用
1.使用适配器

package s.jf3q.listview2;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
List<Map<String,Object>> li=new ArrayList<Map<String,Object>>();
Map<String,Object> m=new HashMap<String,Object>();
m.put("nickname","六三");
m.put("faceimg",R.drawable.img1);
li.add(m);
Map<String,Object> m2=new HashMap<String,Object>();
m2.put("nickname","六三2");
m2.put("faceimg",R.drawable.img2);
li.add(m2);
Map<String,Object> m3=new HashMap<String,Object>();
m3.put("nickname","六三3");
m3.put("faceimg",R.drawable.img3);
li.add(m3);
Map<String,Object> m4=new HashMap<String,Object>();
m4.put("nickname","六三4");
m4.put("faceimg",R.drawable.img4);
li.add(m4);
Map<String,Object> m5=new HashMap<String,Object>();
m5.put("nickname","六三5");
m5.put("faceimg",R.drawable.img5);
li.add(m5);
Map<String,Object> m6=new HashMap<String,Object>();
m6.put("nickname","六三6");
m6.put("faceimg",R.drawable.img6);
li.add(m6);
ListView lv=findViewById(R.id.lv2);
SimpleAdapter sp=new SimpleAdapter(this,li,R.layout.list,new String []{"nickname","faceimg"},new int[]{R.id.nickname,R.id.faceimg});
lv.setAdapter(sp);
lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Map<String,Object> mm=(Map<String,Object>)parent.getItemAtPosition(position);
Toast.makeText(MainActivity.this,mm.get("nickname").toString(),Toast.LENGTH_SHORT).show();
}
});
}
}
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<ListView
android:id="@+id/lv2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
list.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/faceimg"
android:scaleType="centerCrop"
android:layout_width="50dp"
android:layout_height="50dp"/>
<TextView
android:id="@+id/nickname"
android:padding="10dp"
android:text="123"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
2.简单的数组和数组适配器两种方法

package s.jf3q.listview;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String[] tt=new String[]{"1","2","3"};
ArrayAdapter<String> aa=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,tt);
ListView lv=findViewById(R.id.lv);
lv.setAdapter(aa);
}
}
main.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<ListView
android:entries="@array/tt"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
<ListView
android:layout_alignParentBottom="true"
android:id="@+id/lv"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</RelativeLayout>
array.xml放在values目录下
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="tt">
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item>5</item>
</string-array>
</resources>
好博客就要一起分享哦!分享海报
此处可发布评论
评论(0)展开评论
暂无评论,快来写一下吧
展开评论
您可能感兴趣的博客
他的专栏
他感兴趣的技术



java
vue
springboot
Mysql
ssm
小程序
uniapp
js和jquery