Java 获取Listview中所有复选框的列表
我有一个复选框列表视图,由fallowing创建Java 获取Listview中所有复选框的列表,java,android,listview,checkbox,Java,Android,Listview,Checkbox,我有一个复选框列表视图,由fallowing创建 public void addCard(final String cardId){ ListView listView1; Lists movielist = new Lists(); List<String> movies = new ArrayList<String>(); movies = movielist.movieList(); listView1
public void addCard(final String cardId){
ListView listView1;
Lists movielist = new Lists();
List<String> movies = new ArrayList<String>();
movies = movielist.movieList();
listView1 = (ListView)findViewById(R.id.listView1);
listView1.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_multiple_choice, movies));
listView1.setItemsCanFocus(false);
listView1.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
listView1.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
CheckedTextView ctv = (CheckedTextView)arg1;
Toast.makeText(getApplicationContext(),ctv.getText().toString(), Toast.LENGTH_SHORT).show();
//do your stuff in here!
}
});
Button submit = (Button)findViewById(R.id.button1);
submit.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Toast.makeText(getApplicationContext(),"", Toast.LENGTH_SHORT).show();
}
});
}
public void addCard(最终字符串卡片){
列表视图列表视图1;
Lists movielist=新列表();
列表电影=新建ArrayList();
movies=movielist.movielist();
listView1=(ListView)findViewById(R.id.listView1);
listView1.setAdapter(新的ArrayAdapter(这个,android.R.layout.simple\u list\u item\u multiple\u selection,movies));
listView1.setItemsCanFocus(false);
listView1.setChoiceMode(ListView.CHOICE\u MODE\u MULTIPLE);
listView1.setOnItemClickListener(新的OnItemClickListener(){
公共视图单击(AdapterView arg0、视图arg1、整型arg2、长型arg3){
CheckedTextView ctv=(CheckedTextView)arg1;
Toast.makeText(getApplicationContext(),ctv.getText().toString(),Toast.LENGTH_SHORT).show();
//把你的东西放在这里!
}
});
按钮提交=(按钮)findViewById(R.id.button1);
submit.setOnClickListener(新的OnClickListener(){
公共void onClick(视图v){
Toast.makeText(getApplicationContext(),“”,Toast.LENGTH_SHORT.show();
}
});
}
现在,当一个复选框被选中时,我可以编辑与该复选框相关的文本。我想做的是在单击submit时,将文本与选中的所有框关联起来
理想情况下,我想要一个列表,其中每个值都是与复选框关联的文本卡盘之一
干杯 选中的视图在SparseBooleanArray中返回,因此您可以使用下面的代码来获取键或值。下面的示例仅在单个字符串中显示选定的名称
@Override
public void onItemClick(AdapterView<?> adapter, View arg1, int arg2, long arg3)
{
SparseBooleanArray sp=getListView().getCheckedItemPositions();
String str="";
for(int i=0;i<sp.size();i++)
{
str+=movies.get(sp.keyAt(i))+",";
}
Toast.makeText(this, ""+str, Toast.LENGTH_SHORT).show();
}
@覆盖
公共链接(AdapterView适配器、视图arg1、int arg2、long arg3)
{
SparseBooleanArray sp=getListView().GetCheckEditePositions();
字符串str=“”;
对于(inti=0;我会来:)很高兴它帮助了您:)