如何在android中控制对话框的点击事件



我想控制这个有三项对话框的点击事件

当我点击牛奶。。其他功能执行。。当我单击"涂黄油"时,执行其他功能我想知道如何控制项目选择

这是我的对话框代码

@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; 
}

我在代码中看到的问题是,您正在检查数组是否为字符串。

最新更新