0

我搜索了很多网站来创建弹出窗口,但我没有找到在自定义适配器类中创建弹出窗口的正确解决方案,我发现仅用于在 Activity 类中创建弹出窗口。

我的问题是我正在使用自定义适配器类扩展 ArrayAdapter,因为我在 row.xml 文件中有一个适用于 ArrayList 的 TextView。当我单击该文本视图时,我想在光标点位置显示弹出窗口。

这是我的代码:

Clockin_Adapter adap = new Clockin_Adapter(getApplicationContext(), R.layout.group_clkin_row, result);
            clockin.setAdapter(adap);

public static class Clockin_Adapter extends ArrayAdapter<DataItem> {

        ArrayList<DataItem> items;
        Context con;
        int[] buttonStates;
        Time t ;

        public Clockin_Adapter(Context context, int textViewResourceId, ArrayList<DataItem> objects) {
            super(context, textViewResourceId, objects);
            this.con = context;
            this.items = objects;

            buttonStates=new int[objects.size()];
            for(int i=0;i<objects.size();i++)
            {
            buttonStates[i]=0;
            }
        }
        @Override
        public int getCount() {         

             if(employeeList==null){
                    return 0;
                }
                else{
                    return employeeList.length;
                }

        }

        @Override
        public long getItemId(int position) {           
            return 0;
        }
        @Override
        public View getView(final int position, View convertView, ViewGroup parent) {

            View row = convertView;
            final ViewHolder holder;
            if (convertView == null) {
            row = LayoutInflater.from(parent.getContext()).inflate(R.layout.group_clkin_row, null);
            holder=new ViewHolder();
            } else {
                //code

                }

            }

                holder.name = (TextView)row.findViewById(R.id.group_name);

                holder.name.setText(item.getName());
                holder.name.setOnClickListener(new OnClickListener() {

                    @Override
                    public void onClick(View v) {


                        //Need PopUp window Here

                    }
                });

static class ViewHolder {
        TextView name;
        TextView time;

        }


please give me solution.


Thanks in advanced.
4

1 回答 1

0

自定义浮动窗口:

你可以dialog.setContentView(R.layout.custom);改成dialog.setView(//your view);

final Dialog dialog = new Dialog(con);
            dialog.setContentView(R.layout.custom);
            dialog.setTitle("Title...");
于 2012-09-06T09:27:25.060 回答