卡片视图按钮适配器

Card View Button Adaptor

我创建了一个空白 Activity 并拥有这个主要 layout:activity_main。xml

    <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.solution.engineering.lecture_time.MainActivity">
    <android.support.v7.widget.CardView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="4dp"
        android:id="@+id/note">


        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:padding="@dimen/activity_horizontal_margin">
            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:id="@+id/title"
                android:text="@string/welcome"
                android:textAppearance="?android:textAppearanceLarge"/>
            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:id="@+id/description"
                android:text="@string/description"
                android:textAppearance="?android:textAppearanceMedium"
                android:layout_below="@+id/title"/>

        </RelativeLayout>
    </android.support.v7.widget.CardView>
    <android.support.v7.widget.CardView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="4dp"
        android:layout_below="@id/note">

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:padding="@dimen/activity_horizontal_margin">
            <Button
                android:layout_width="200dp"
                android:layout_height="wrap_content"
                android:layout_centerHorizontal="true"
                android:text="@string/button_text"
                android:id="@+id/button_lecture">


            </Button>

        </RelativeLayout>


    </android.support.v7.widget.CardView>


</RelativeLayout>

我的 MainActivity.java 文件如下所示:

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {

    public Button lecture;
    public void setnew(){
        lecture=(Button)findViewById(R.id.lecture_button);
        lecture.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent create = new Intent(MainActivity.this,LectureActivity.class);
                startActivity(create);

            }
        });

    }


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        setnew();
    }
}

我需要通过单击按钮启动一个新的 Activity,这段代码没有显示任何错误,但是当 运行 它在我的设备上时它不会启动 LectureActivity . 为了实现 onclick,我的 java 文件中的可能更改是什么。 如果这与 cardview 的适配器有任何关系,那么我如何定义适配器 class。 我是 android 编程新手。欣赏任何一种 help.Thanks。 enter image description here

我找到了问题的答案。不知道为什么这不起作用,但我将其改为 MainActivity.this.startActivity(create); 而不是这个 startActivity(create) 并且它起作用了。