Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/198.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android ListItem';s项目弹出警告对话框_Android_Android Alertdialog_Listadapter_Listitem - Fatal编程技术网

Android ListItem';s项目弹出警告对话框

Android ListItem';s项目弹出警告对话框,android,android-alertdialog,listadapter,listitem,Android,Android Alertdialog,Listadapter,Listitem,我在这里遇到了一个常见的问题,我很困惑 我需要的只是列表项的每个子项的一个对话框。我看到了一个列表项的对话框,但我需要它一直到列表项的项。目前,我在getView()方法中尝试在适配器中执行此操作 例如: @Override public View getView(int position, View convertView, ViewGroup parent) { View v = convertView; if (v == null) { Layou

我在这里遇到了一个常见的问题,我很困惑

我需要的只是列表项的每个子项的一个对话框。我看到了一个列表项的对话框,但我需要它一直到列表项的项。目前,我在getView()方法中尝试在适配器中执行此操作

例如:

@Override
public View getView(int position, View convertView, ViewGroup parent)
{
    View v = convertView;

    if (v == null)
    {
        LayoutInflater li = (LayoutInflater) _context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        v = li.inflate(_resourceId, null);
    }

    string description = "howdy Test";

    TextView description = (TextView) v.findViewById(R.id.description);
    description.setText(description );
    description.setOnClickListener(new View.OnClickListener()
    {
        public void onClick(View view)
        {
            AlertDialog.Builder dia = new AlertDialog.Builder(view.getContext());
            dia.setTitle(view.getContext().getResources().getString(R.string.DESCRIPTION_TITLE));
            dia.create();
        }
    });
}
在上面的例子中,它确实进入了onClick()方法,但AlertDialog没有发生任何变化。还有人试过这个吗?有更好的办法吗?更妙的是,我做错了什么

谢谢,
Kelly

您必须在dia对象上调用
show()
方法。

与其向列表视图中的每个项目添加OnClickListener,不如向列表视图本身添加一个

myListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {

    public void onItemClick(AdapterView parent, View v, int position, long id){

        // Create and show dialog here

    }
});

砰!这对我来说是个好办法。非常感谢你Slukian,我真的很感激。我知道这必须是一些简单的东西,但它只是不适合我。这对我的情况没有帮助。我需要在列表项中的单个级别上使用它,而不是整个列表项。