我正在使用列表,我希望为每个列表项显示不同的AlertDialog,并在此AlertDialog中单击“是”或“否”按钮时显示不同的消息。
list.setOnItemClickListener( new AdapterView.OnItemClickListener(){
@Override
public void onItemClick( AdapterView<?> parent, View v, int position, long id ){
dialogBox.setMessage(dialogBoxMessage[position]);
dialogBox.setNegativeButton("No", new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int which){
Toast.makeText( getApplicationContext() , resultOfNoClick[position] , Toast.LENGTH_SHORT);
}
});
}
} );
“resultOfNoClick”是一个字符串数组,其中包含需要在ListView上的特定项目中单击“否”的每个字符串。那么,有一种方法可以将位置(由“onItemClick”接收的变量)作为参数传递给上面的“onClick”函数吗?
答案 0 :(得分:0)
将其设为最终变量:
list.setOnItemClickListener( new AdapterView.OnItemClickListener(){
@Override
public void onItemClick( AdapterView<?> parent, View v, final int position, long id ){
dialogBox.setMessage(dialogBoxMessage[position]);
dialogBox.setNegativeButton("No", new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int which){
Toast.makeText( getApplicationContext() , resultOfNoClick[position] , Toast.LENGTH_SHORT);
}
});
}
} );