Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/191.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中向弹出窗口添加片段_Android_Android Layout_Android Activity_Android Fragments - Fatal编程技术网

在android中向弹出窗口添加片段

在android中向弹出窗口添加片段,android,android-layout,android-activity,android-fragments,Android,Android Layout,Android Activity,Android Fragments,我的问题是,我想将片段添加到弹出窗口中,以便在单击列表时显示一些信息。我的列表包含自定义适配器。下面是我想做的:- 单击列表项时,我从adapterview获取该模型并将其传递给JobSearchModel。现在JobSearchModel包含了我想在JobDescription框架中显示的信息。但我不知道如何在弹出窗口中添加碎片 searchResult.setOnItemClickListener(new AdapterView.OnItemClickListener() {

我的问题是,我想将片段添加到弹出窗口中,以便在单击列表时显示一些信息。我的列表包含自定义适配器。下面是我想做的:-

单击列表项时,我从adapterview获取该模型并将其传递给JobSearchModel。现在JobSearchModel包含了我想在JobDescription框架中显示的信息。但我不知道如何在弹出窗口中添加碎片

searchResult.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
                JobSearchModel jobs = (JobSearchModel) adapterView.getItemAtPosition(i);

                JobDescription jobDescription = new JobDescription();

                Bundle args = new Bundle();
                args.putSerializable("jobs", jobs);

                jobDescription.setArguments(args);

                popupWindow.showAtLocation(jobDescription, Gravity.CENTER, 0, 0);
            }
        });
根据您的规范,以下各项应能完美发挥作用。从指定给视图的OnClickListener的onClickView v内部调用此方法:

public void showPopup(View anchorView) {

    View popupView = getLayoutInflater().inflate(R.layout.popup_layout, null);

    PopupWindow popupWindow = new PopupWindow(popupView, 
                           LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);

    // Example: If you have a TextView inside `popup_layout.xml`    
    TextView tv = (TextView) popupView.findViewById(R.id.tv);

    tv.setText(....);

    // Initialize more widgets from `popup_layout.xml`
    ....
    ....

    // If the PopupWindow should be focusable
    popupWindow.setFocusable(true);

    // If you need the PopupWindow to dismiss when when touched outside 
    popupWindow.setBackgroundDrawable(new ColorDrawable());

    int location[] = new int[2];

    // Get the View's(the one that was clicked in the Fragment) location
    anchorView.getLocationOnScreen(location);

    // Using location, the PopupWindow will be displayed right under anchorView
    popupWindow.showAtLocation(anchorView, Gravity.NO_GRAVITY, 
                                     location[0], location[1] + anchorView.getHeight());

}

评论应该充分解释这一点。anchorView是来自onClickView的v.

这并没有回答有关向弹出窗口添加片段的问题。从帮助页面:无论何时,当您遇到一篇非常草率、不费力气的帖子,或者一个明显且可能存在危险错误的答案时,请使用您的否决票。嘿,即使是我也有这个问题。你有没有找到解决这个问题的办法?