<ListView
android:id="@+id/listView"
android:layout_width="424dp"
android:layout_height="684dp"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_marginBottom="1dp"
android:divider="@color/colorAccent"
//间隔的颜色设定
android:dividerHeight="2dp"
//每个条目之间添加了一个2dp的间隔
android:entries="@array/name"
//添加的自制的数组文件
android:fastScrollEnabled="true"
//添加的快速滚动条
android:listSelector="@color/colorPrimary"
//按下条目时显示的颜色
android:scrollbarAlwaysDrawHorizontalTrack="true"
//添加了一个显示的混动条
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="1.0" />
//数组文件
<?xml version="1.0" encoding="utf-8"?>
<resources>
<array name="name">
<item>客户1</item>
<item>客户2</item>
<item>客户3</item>
<item>客户4</item>
<item>客户5</item>
<item>客户6</item>
<item>客户7</item>
<item>客户8</item>
<item>客户9</item>
<item>客户10</item>
<item>客户11</item>
<item>客户12</item>
<item>客户13</item>
<item>客户14</item>
<item>客户15</item>
<item>客户16</item>
<item>客户17</item>
<item>客户18</item>
</array>
</resources>
package com.example.listviewtest;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
private ListView listView ;
// 声明一个listview
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = findViewById(R.id.listView);
//把这里声明的listview绑定之前做好的xml中的listview
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
//因为需要给listview中的每一个条目都设定点击事件所以要用OnItemClickListener方法
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
//这里想给每个点击显示他的name
TextView tv = (TextView) view;
//先将方法内的view强转成TextView
Toast.makeText(MainActivity.this,((TextView) view).getText(),Toast.LENGTH_SHORT).show();
//然后用一个toast显示,获取他的gatText
}
});
}
}
该方式使用的不多,先暂时不学,以后用到在学
单选模式,就是只可以选一个
首先把xml里面的 android:entries="@array/name"删掉,然后我们在mainactivity里面添加
package com.example.listviewtest;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
private ListView listView ;
// 声明一个listview
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = findViewById(R.id.listView);
//把这里声明的listview绑定之前做好的xml中的listview
String[] arr = getResources().getStringArray(R.array.name);
//首先造一个string类型的数组对象,然后把我们之前xml文件做的数组取出来赋给它
ArrayAdapter<String> aa = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_single_choice,arr);
listView.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
listView.setAdapter(aa);
//把做好的数组对象放进单选模式方法中就行了
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
//因为需要给listview中的每一个条目都设定点击事件所以要用OnItemClickListener方法
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
//这里想给每个点击显示他的name
TextView tv = (TextView) view;
//先将方法内的view强转成TextView
Toast.makeText(MainActivity.this,((TextView) view).getText(),Toast.LENGTH_SHORT).show();
//然后用一个toast显示,获取他的gatText
}
});
}
}
想要设置成多选模式只需要将上段代码中的两个single换成multiple即可实现