我想控制这个有三项对话框的点击事件
当我点击牛奶。。其他功能执行。。当我单击"涂黄油"时,执行其他功能我想知道如何控制项目选择
这是我的对话框代码
@Override
public void onItemClick(AdapterView<?> parent, View view, int position,long id) {
// TODO Auto-generated method stub
UserModel user = (UserModel)getActivity(). getIntent().getSerializableExtra("User");
String User_id= contactList.get(position).get("User_Id");
String Request_id=contactList.get(position).get("Request_Id");
String Accpeter_Id=String.valueOf(user.getUser_Id());
//List items
final CharSequence[]items = {"Milk", "Butter", "Cheese"};
//Prepare the list dialog box
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
//Set its title
builder.setTitle("Request Confirmation");
//Set the list items and assign with the click listener
builder.setItems(items, new DialogInterface.OnClickListener() {
// Click listener
public void onClick(DialogInterface dialog, int item) {
//Toast.makeText(getActivity(), items[item], Toast.LENGTH_SHORT).show();
if(items.equals(items[item])){
Toast.makeText(getActivity(), "Hi friends CLicked", Toast.LENGTH_SHORT).show();
}
else if(items.equals(items[item])){
Toast.makeText(getActivity(), "hi butter Mutter", Toast.LENGTH_SHORT).show();
}
else{
Toast.makeText(getActivity(), "Cheesy way hehehe", Toast.LENGTH_SHORT).show();
}
}
});
AlertDialog alert = builder.create();
//display dialog box
alert.show();
}
当我点击任何其他项目时,块正在任何点击上打印
我像这个一样设置条件
if(items.equals(items[item])){
Toast.makeText(getActivity(), "Hi friends CLicked", Toast.LENGTH_SHORT).show();
}else if(items.equals(items[item])){
Toast.makeText(getActivity(), "hi butter Mutter", Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(getActivity(), "Cheesy way hehehe", Toast.LENGTH_SHORT).show();
}
单击任何项目仅显示其他条件告诉我我做错了什么然后。。。
谢谢
您的equal语句是错误的,您正在用它的Charsequence[]项检查CharSequence[] items
。
if(items.equals(items[item]))
{
}
试试这个:
if(items[0].equals[items[item]])
{
}
else if (items[1].equals[items[item]])
.
.
.
试试这样的东西项目是点击的位置:
switch(item){
case 0:// first item in your list
break;
case 1:// second item in your list
break;
case 2:// third item in your list
break;
}
我在代码中看到的问题是,您正在检查数组是否为字符串。