没有使用意图加载新活动?按下按钮后即可显示

时间:2016-05-04 23:04:49

标签: android android-intent

我这是在我的第一堂课

    public void btnInput (View view) {
    Intent intent = new Intent(this, inputTimetableEntry.class);
   startActivity(intent);
    }

inputTimetableEntry是我要链接到的类。

在那个班级里我有

    Intent intent = getIntent();

一旦点击了一个id为btnInput的按钮,这是否意味着去了第二课?有什么建议吗?

这是主要活动中使用的XML:

   <?xml version="1.0" encoding="utf-8"?>
   <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.w15037204.w15037204assignment.timetableActivity">

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_centerVertical="true"
    android:layout_centerHorizontal="true">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:text="STUDENT TIMETABLE"
        android:id="@+id/txtTitle"
        android:textColor="#ff6a00"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:textStyle="bold"/>

    <ListView
        android:layout_width="400dp"
        android:layout_height="450dp"
        android:id="@+id/listEntries"
        android:layout_below="@+id/txtTitle"
        android:layout_marginTop="10dp" />

    <Button
        android:layout_width="180dp"
        android:layout_height="70dp"
        android:text="Input Entry"
        android:id="@+id/btnInput"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:textColor="#ff6a00"
        android:textSize="17dp"
        android:textStyle="bold"
        android:clickable="true" />
</RelativeLayout>

1 个答案:

答案 0 :(得分:0)

您没理解通过xml正确地将侦听器附加到视图。 如果要将侦听器附加到xml中的视图,则视图的id可以是任何内容,但应为视图设置onclick属性。 所以你的观点看起来应该像 -

<Button
        android:layout_width="180dp"
        android:layout_height="70dp"
        android:text="Input Entry"
        android:id="@+id/btnInput" //Any id here
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:textColor="#ff6a00"
        android:textSize="17dp"
        android:textStyle="bold"
        android:onClick="sayHello" //Name which you would be using in your Activity
        android:clickable="true" />

在您的活动中定义一个名为sayHello的方法,该方法接受View引用作为参数

  public void sayHello(View view){
       //Code here
    }

或者,您可以在活动中动态setOnClickListener(),而无需在xml中设置onClick属性。

Button btnInput = (Button)findViewById(R.id.btnInput);
  btnInput.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    //Code here
                }
            });