效果
普通ListView
带有的单选框的ListView
带有多选框的ListView
带有Radio的ListView
实现代码
普通ListView
package com.example.listviewdemo;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.BaseAdapter;
import android.widget.ListView;
public class MainActivity extends AppCompatActivity {
private static final String[] str=
{
"first","second","third","forth",
"fifth"
};//Define a String array to show the content of ListView
private ListView lv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lv=findViewById(R.id.lv);
lv.setAdapter(new ArrayAdapter<String>(
this,android.R.layout.simple_list_item_1,str
));
}
}
单选框:
package com.example.listviewdemo;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.BaseAdapter;
import android.widget.ListView;
public class MainActivity extends AppCompatActivity {
private static final String[] str=
{
"first","second","third","forth",
"fifth"
};//Define a String array to show the content of ListView
private ListView lv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lv=findViewById(R.id.lv);
lv.setAdapter(new ArrayAdapter<String>(
this,android.R.layout.simple_list_item_multiple_choice,str
));
lv.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
}
}
带有多选框的ListView
package com.example.listviewdemo;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.BaseAdapter;
import android.widget.ListView;
public class MainActivity extends AppCompatActivity {
private static final String[] str=
{
"first","second","third","forth",
"fifth"
};//Define a String array to show the content of ListView
private ListView lv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lv=findViewById(R.id.lv);
lv.setAdapter(new ArrayAdapter<String>(
this,android.R.layout.simple_list_item_multiple_choice,str
));
lv.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
}
}
多选的附带RadioButton的ListView(单选同理,只需要把
ListView.CHOICE_MODE_MULTIPLE
改为
ListView.CHOICE_MODE_SINGLE
package com.example.listviewdemo;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.BaseAdapter;
import android.widget.ListView;
public class MainActivity extends AppCompatActivity {
private static final String[] str=
{
"first","second","third","forth",
"fifth"
};//Define a String array to show the content of ListView
private ListView lv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lv=findViewById(R.id.lv);
lv.setAdapter(new ArrayAdapter<String>(
this,android.R.layout.simple_list_item_single_choice,str
));
lv.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
}
}