android适配器Onclick打开新的activty

时间:2016-05-02 11:07:09

标签: java android android-layout

我正在使用此代码为每个新项目制作新的侦听器

首先是xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/list_row_selector"
android:padding="8dp"
android:id="@+id/showonmap"
android:alpha="0.9">

<!-- Thumbnail Image -->

<!-- notofocation  Title -->
<TextView
    android:id="@+id/title"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textSize="15dp"
    android:textStyle="bold" />

<!--   -->
<TextView
    android:id="@+id/rating"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_below="@id/title"
    android:layout_marginTop="1dip"
    android:textSize="@dimen/rating" />

<!-- Genre -->
<TextView
    android:id="@+id/genre"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_below="@id/rating"
    android:layout_marginTop="5dp"
    android:textColor="@color/genre"
    android:textSize="@dimen/genre" />

<!-- date -->
<TextView
    android:id="@+id/releaseYear"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentRight="true"
    android:textColor="@color/year"
    android:textSize="@dimen/year" />

我只是解析JSON数组响应并使新项依赖于数组长度

之后我将侦听器添加到

  

..具有id showonmap的RelativeLayout

点击它时打开新活动 Onclick的代码

showonmaps.setOnClickListener(new View.OnClickListener() {


        public void onClick(View view) {


            Intent intent = new Intent(context, show_notification.class);
            intent.putExtra("lat", m.getGenre().get(0));
            intent.putExtra("lang", m.getGenre().get(1));
            intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);


            context.startActivity(intent);





        }
    });

这里我正在使用

  intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
  context.startActivity(intent);

使用时

Intent intent = new Intent(context,
                            show_notification.class);
                    context.startActivity(intent); 

应用程序已停止,因此我必须返回并使用

intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
  context.startActivity(intent);

但是当我使用它并打开新活动并按回按钮时,它会从应用程序中退出任何想法或解决方案吗?

1 个答案:

答案 0 :(得分:1)

我通过将活动和上下文传递给类

来解决它

代码将是

 Intent intent = new Intent(context, show_notification.class);
activity.startActivity(yourIntent);

在构造类

时传递的内容和活动

这个问题帮助我找到了这个问题

here