Android 如何从片段适配器启动tacitivity

Android 如何从片段适配器启动tacitivity,android,adapter,fragment,Android,Adapter,Fragment,我有一个带有自定义适配器的列表片段。这个适配器有一个映像的onClick事件,我想在其中启动一个新的意图(活动)。我不能这样做 谁能帮我查一下密码吗 viewholder.gMaps = (ImageView) convertView.findViewById(R.id.imgMaps); viewholder.gMaps.setClickable(true); viewholder.gMaps.setOnClickListener(new OnClickListener() { @Ov

我有一个带有自定义适配器的列表片段。这个适配器有一个映像的onClick事件,我想在其中启动一个新的意图(活动)。我不能这样做

谁能帮我查一下密码吗

viewholder.gMaps = (ImageView) convertView.findViewById(R.id.imgMaps);
viewholder.gMaps.setClickable(true);
viewholder.gMaps.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        Log.v(LOG_TAG, "Not sure how do I start an Activity");
        /*
        Intent intent = new Intent().setClass(((ListViewFragment) context), GMaps.class);
        intent.putExtra("Longitude", mList.get(holder.position).get("Longitude").toString());
        intent.putExtra("Latitude", mList.get(holder.position).get("Latitude").toString());
        startActivity(intent);
        */
    }
});

对于仍在搜索答案的用户,请参阅以下代码

holder.gMaps.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {

                Intent intent = new Intent().setClass(v.getContext(), GMaps.class);
                intent.putExtra("Longitude", mList.get(holder.position).get("Longitude").toString());
                intent.putExtra("Latitude", mList.get(holder.position).get("Latitude").toString());
                v.getContext().startActivity(intent);

            }
        });

对于仍在搜索答案的用户,请参阅以下代码

holder.gMaps.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {

                Intent intent = new Intent().setClass(v.getContext(), GMaps.class);
                intent.putExtra("Longitude", mList.get(holder.position).get("Longitude").toString());
                intent.putExtra("Latitude", mList.get(holder.position).get("Latitude").toString());
                v.getContext().startActivity(intent);

            }
        });

如果在Activity类外部调用startActivity(),则必须将标志设置为新活动

holder.gMaps.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {

            Intent intent = new Intent().setClass(v.getContext(), GMaps.class);
            intent.putExtra("Longitude", mList.get(holder.position).get("Longitude").toString());
            intent.putExtra("Latitude", mList.get(holder.position).get("Latitude").toString());
            intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            v.getContext().startActivity(intent);

        }
    });

如果在Activity类外部调用startActivity(),则必须将标志设置为新活动

holder.gMaps.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {

            Intent intent = new Intent().setClass(v.getContext(), GMaps.class);
            intent.putExtra("Longitude", mList.get(holder.position).get("Longitude").toString());
            intent.putExtra("Latitude", mList.get(holder.position).get("Latitude").toString());
            intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            v.getContext().startActivity(intent);

        }
    });