Android 关于setOnItemClickListener(新的OnItemClickListener()
我的数据库数据存储在列表视图中,当我单击其中一个列表视图时,如何根据参数“位置”获取每个项目Android 关于setOnItemClickListener(新的OnItemClickListener(),android,Android,我的数据库数据存储在列表视图中,当我单击其中一个列表视图时,如何根据参数“位置”获取每个项目 lv.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { // TODO Auto-generated method stu
lv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
// TODO Auto-generated method stub
}
});
lv.setOnItemClickListener(新的OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
//TODO自动生成的方法存根
}
});
您可以通过以下方式完成:
messagesContainer.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
switch (position){
case 0:
break;
case 1:
break;
}
}
});
messagesContainer.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
开关(位置){
案例0:
打破
案例1:
打破
}
}
});
但是,当我们必须在listview中添加许多项时,这将非常复杂。
谢谢您可以通过以下方式完成:
messagesContainer.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
switch (position){
case 0:
break;
case 1:
break;
}
}
});
messagesContainer.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
开关(位置){
案例0:
打破
案例1:
打破
}
}
});
但是,当我们必须在listview中添加许多项时,这将非常复杂。
谢谢试试这个
此示例将帮助您
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// When clicked, show a toast with the TextView text
Toast.makeText(getApplicationContext(), ((TextView) view).getText(),
Toast.LENGTH_SHORT).show();
}
});
lv.setOnItemClickListener(新的OnItemClickListener(){
public void onItemClick(AdapterView父级、视图、,
内部位置,长id){
//单击后,显示带有文本视图文本的祝酒词
Toast.makeText(getApplicationContext(),((TextView)视图).getText(),
吐司。长度(短)。show();
}
});
对于请尝试此
此示例将帮助您
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// When clicked, show a toast with the TextView text
Toast.makeText(getApplicationContext(), ((TextView) view).getText(),
Toast.LENGTH_SHORT).show();
}
});
lv.setOnItemClickListener(新的OnItemClickListener(){
public void onItemClick(AdapterView父级、视图、,
内部位置,长id){
//单击后,显示带有文本视图文本的祝酒词
Toast.makeText(getApplicationContext(),((TextView)视图).getText(),
吐司。长度(短)。show();
}
});
对于,如果在listview中设置数据库数据,如下所示
ArrayAdapter<Object> mDatabaseData = new ArrayAdapter<Object>(this,android.R.layout.simple_expandable_list_item_2, array);
lv.setAdapter(mDatabaseData);
ArrayAdapter mDatabaseData=新的ArrayAdapter(这是android.R.layout.simple\u expandable\u list\u item\u 2,数组);
lv.setAdapter(mDatabaseData);
然后您可以根据下面的参数“位置”获取每个项目
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// When clicked, get data for selected position
Object selectedItem=mDatabaseData.get(position);
}
});
lv.setOnItemClickListener(新的OnItemClickListener(){
public void onItemClick(AdapterView父级、视图、,
内部位置,长id){
//单击时,获取所选位置的数据
对象selectedItem=mDatabaseData.get(位置);
}
});
如果在listview中设置数据库数据,如下所示
ArrayAdapter<Object> mDatabaseData = new ArrayAdapter<Object>(this,android.R.layout.simple_expandable_list_item_2, array);
lv.setAdapter(mDatabaseData);
ArrayAdapter mDatabaseData=新的ArrayAdapter(这是android.R.layout.simple\u expandable\u list\u item\u 2,数组);
lv.setAdapter(mDatabaseData);
然后您可以根据下面的参数“位置”获取每个项目
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// When clicked, get data for selected position
Object selectedItem=mDatabaseData.get(position);
}
});
lv.setOnItemClickListener(新的OnItemClickListener(){
public void onItemClick(AdapterView父级、视图、,
内部位置,长id){
//单击时,获取所选位置的数据
对象selectedItem=mDatabaseData.get(位置);
}
});
如果要获取适配器的项目,请遵循此url,然后参见适配器#getItem()
方法如果要获取适配器的项目,请参见适配器#getItem(),可能重复遵循此url
method可能重复OK,我会尝试使用您的方法,谢谢您的回答。好的,我会尽我最大的努力。好的,我会尝试使用您的方法,谢谢您的回答。好的,我会尽我最大的努力。因为listview中的数据来自数据库,所以位置的值正在更改。那么我们如何使用“切换”更好?谢谢!因为listview中的数据来自数据库,位置的值正在更改。那么我们如何更好地使用“switch”呢?谢谢!是的,我使用您所说的方法将数据添加到数据库中。是的,谢谢您的帮助,可以根据“String str=(lv.getItemAtPosition(position).toString()显示整个记录。”但是,我无法成功分离所需的值。就我而言,因为记录来自数据库,所以我可能会根据id获取特定于数据库的属性列的值。我现在没有非常有效的方法来执行此操作。谢谢!抱歉,我误读了您的答案。我使用了“ArrayAdapter mDatabaseData=new ArrayAdapter”(这是android.R.layout.simple_expandable_list_item_2,array);lv.setAdapter(mDatabaseData);“在listview中显示数据。是的,我使用您所说的方法将数据添加到数据库中。是的,感谢您的帮助,可以根据“String str=(lv.getItemAtPosition(position).toString()”显示整个记录。”但是,我无法成功分离所需的值。就我而言,因为记录来自数据库,所以我可能会根据id获取特定于数据库的属性列的值。我现在没有非常有效的方法来执行此操作。谢谢!抱歉,我误读了您的答案。我使用了“ArrayAdapter mDatabaseData=new ArrayAdapter”(这是android.R.layout.simple_expandable_list_item_2,array);lv.setAdapter(mDatabaseData);”以在listview中显示数据。