我创建了一个空白的Activity并具有以下主要布局: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。 可能是我的java文件中可能发生的变化,以实现onclick。 如果这与cardview的适配器有关,那么我该如何定义适配器类。 我是android编程的新手。感谢任何帮助。谢谢。 enter image description here
答案 0 :(得分:0)
我找到了问题的答案。不知道为什么这不起作用,但是,我将其改为startActivity(create)
而不是MainActivity.this.startActivity(create);
,而且它有效。