MainActivity.java(一流)

package com.example.we.reportcardjavaclass;

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

public class MainActivity extends AppCompatActivity {

    public EditText one, two, three, four, five, six;
    public String bang1, bang2, bang3, bang4, bang5, bang6;
    public Button results;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        // Find the View that shows the numbers category

    }

    public void getResult(View view){
        results = (Button) findViewById(R.id.result);
        Intent numbersIntent = new Intent(MainActivity.this, result.class);
        startActivity(numbersIntent);
        one = (EditText) findViewById(R.id.name);
        bang1 = one.getText().toString();

        two = (EditText) findViewById(R.id.Class);
        bang2 = two.getText().toString();

        three = (EditText) findViewById(R.id.English);
        bang3 = three.getText().toString();

        four = (EditText) findViewById(R.id.Hindi);
        bang4 = four.getText().toString();

        five = (EditText) findViewById(R.id.Maths);
        bang5 = five.getText().toString();

        six = (EditText) findViewById(R.id.Science);
        bang6 = six.getText().toString();

    }

}

activity_main.xml(第一个布局文件)

<?xml version="1.0" encoding="utf-8"?>
<ScrollView 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=".MainActivity">

<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.we.reportcardjavaclass.MainActivity"
    android:padding="16dp">

    <EditText
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:hint="Student's Name"
        android:id="@+id/name"
        android:layout_marginLeft="8dp"
        app:layout_constraintLeft_toLeftOf="parent"
        android:layout_marginRight="8dp"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        android:layout_marginTop="8dp"
        android:layout_marginStart="8dp"
        android:layout_marginEnd="8dp" />

    <EditText
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:hint="Class"
        android:id="@+id/Class"
        android:layout_marginLeft="8dp"
        app:layout_constraintLeft_toLeftOf="parent"
        android:layout_marginRight="8dp"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        android:layout_marginTop="64dp"
        android:layout_marginStart="8dp"
        android:layout_marginEnd="8dp" />

    <EditText
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:hint="Grade in English"
        android:id="@+id/English"
        android:layout_marginLeft="8dp"
        app:layout_constraintLeft_toLeftOf="parent"
        android:layout_marginRight="8dp"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        android:layout_marginTop="128dp"
        android:layout_marginStart="8dp"
        android:layout_marginEnd="8dp" />

    <EditText
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:hint="Grade in Hindi"
        android:id="@+id/Hindi"
        android:layout_marginLeft="8dp"
        app:layout_constraintLeft_toLeftOf="parent"
        android:layout_marginRight="8dp"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        android:layout_marginTop="192dp"
        android:layout_marginStart="8dp"
        android:layout_marginEnd="8dp" />

    <EditText
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:hint="Grade in Maths"
        android:id="@+id/Maths"
        android:layout_marginLeft="8dp"
        app:layout_constraintLeft_toLeftOf="parent"
        android:layout_marginRight="8dp"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        android:layout_marginTop="256dp"
        android:layout_marginStart="8dp"
        android:layout_marginEnd="8dp" />

    <EditText
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:hint="Grade in Science"
        android:id="@+id/Science"
        android:layout_marginLeft="8dp"
        app:layout_constraintLeft_toLeftOf="parent"
        android:layout_marginRight="8dp"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        android:layout_marginTop="320dp"
        android:layout_marginStart="8dp"
        android:layout_marginEnd="8dp" />

    <Button
        android:text="Get result"
        android:id="@+id/result"
        android:onClick="getResult"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginLeft="8dp"
        app:layout_constraintLeft_toLeftOf="parent"
        android:layout_marginRight="8dp"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        android:layout_marginTop="384dp"
        android:layout_marginStart="8dp"
        android:layout_marginEnd="8dp"/>


</android.support.constraint.ConstraintLayout>
</ScrollView>








## result.xml (Second Layout File) ##

<?xml version="1.0" encoding="utf-8"?>

<ScrollView android:layout_width="match_parent"
    android:layout_height="wrap_content"
    xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="32dp">

    <android.support.v7.widget.CardView
        android:id="@+id/resultCard"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        card_view:cardElevation="2dp"
        android:layout_gravity="center_vertical"
        card_view:cardUseCompatPadding="true">

        <FrameLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:paddingBottom="20dp"
            android:paddingLeft="20dp"
            android:paddingRight="20dp"
            android:paddingTop="20dp">

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                >

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginBottom="20dp"
                    android:text="Student's Name"
                    android:textAllCaps="true"
                    android:textSize="20sp"
                    android:textStyle="bold"/>

                <TextView
                    android:id="@+id/one"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginBottom="20dp"

                    android:textAllCaps="false"
                    android:textSize="15sp"
                    android:textStyle="normal"/>

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginBottom="20dp"
                    android:text="Class"
                    android:textAllCaps="true"
                    android:textSize="20sp"
                    android:textStyle="bold"/>

                <TextView
                    android:id="@+id/two"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginBottom="40dp"
                    android:textAllCaps="false"
                    android:textSize="15sp"
                    android:textStyle="normal"/>

            </LinearLayout>


            <RelativeLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="160dp"
                android:background="@color/cardview_dark_background"
                android:padding="20dp"
                >

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:text="English"
                    android:textAllCaps="true"
                    android:textColor="@android:color/white"
                    android:textStyle="bold"
                    />

                <TextView
                    android:id="@+id/three"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentRight="true"

                    android:textAllCaps="true"
                    android:textColor="@android:color/white"
                    android:textStyle="normal"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:layout_marginTop="40dp"
                    android:text="Hindi"
                    android:textAllCaps="true"
                    android:textColor="@android:color/white"
                    android:textStyle="bold"
                    />

                <TextView
                    android:id="@+id/four"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentRight="true"
                    android:layout_marginTop="40dp"

                    android:textAllCaps="true"
                    android:textColor="@android:color/white"
                    android:textStyle="normal"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:layout_marginTop="80dp"
                    android:text="Maths"
                    android:textAllCaps="true"
                    android:textColor="@android:color/white"
                    android:textStyle="bold"
                    />

                <TextView
                    android:id="@+id/five"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentRight="true"
                    android:layout_marginTop="80dp"

                    android:textAllCaps="true"
                    android:textColor="@android:color/white"
                    android:textStyle="normal"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:layout_marginTop="120dp"
                    android:text="Science"
                    android:textAllCaps="true"
                    android:textColor="@android:color/white"
                    android:textStyle="bold"
                    />
                <TextView
                    android:id="@+id/six"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentRight="true"
                    android:layout_marginTop="120dp"

                    android:textAllCaps="true"
                    android:textColor="@android:color/white"
                    android:textStyle="normal"/>

            </RelativeLayout>
            <Button
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="350dp"
                android:text="BACK TO HOME"
                />
        </FrameLayout>
    </android.support.v7.widget.CardView>
</LinearLayout></ScrollView>

二等

package com.example.we.reportcardjavaclass;

import android.os.Bundle;
import android.widget.TextView;

/**
 * Created by we on 08-07-2017.
 */

public class result extends MainActivity{

    public TextView one, two, three, four, five, six;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.result);
        setTitle(bang1+"s Result");
        one = (TextView) findViewById(R.id.one);
        one.setText(bang1);
        two = (TextView) findViewById(R.id.two);
        two.setText(bang2);
        three = (TextView) findViewById(R.id.three);
        three.setText(bang3);
        four = (TextView) findViewById(R.id.four);
        four.setText(bang4);
        five = (TextView) findViewById(R.id.five);
        five.setText(bang5);
        six = (TextView) findViewById(R.id.six);
        six.setText(bang6);
    }
}

EditText值将MainActivity.java存储在变量bang-123456中。我在声明它们时添加了公共修饰符,因此我也可以在第二类中访问它们。 在第二堂课中,我想使用这些变量值设置到Textviews中,但在运行时不显示该值。

在模拟器中运行后,我还附加了这两种布局的屏幕截图。

在第二种布局中,应该显示名称和其他值。

===============>>#1 票数:1

我建议您退后一步,以更好地了解Android的基本原理,包括“活动”。 也许一个不错的起点是了解“ 活动生命周期”

您的问题的答案不是很简单,因为Android的工作方式可能与您的理解有很大不同。

简而言之,您的第二个活动是与第一个活动完全不同的类实例。 从第二个扩展第二个并不意味着分配的变量可用于第二个,仅意味着该类以方法和字段的形式继承其父级的结构。

相反,您应该以这样的方式设计活动:它们可以中继那些字符串。 启动第二个活动时,请在启动时在意图中包含这些字符串。

例如:

public class MainActivity extends AppCompatActivity {

    // ...

    /** Your method where the second activity is launched */
    public void onButtonClicked() {
        Intent intent = new Intent(this, SecondActivity.class);
        intent.putString(SecondActivity.EXTRA_BANG1, bang1);
        // ...
        startActivity(intent);
    }

}

public class SecondActivity extends AppCompatActivity {

    public static final String EXTRA_BANG1 = "bang1";

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.result);
        // ...
        TextView tvOne = (TextView) findViewById(R.id.one);
        // ...

        String bang1 = getIntent().getString(EXTRA_BANG1);
        tvOne.setText(bang1);
    }

}

我完全建议阅读Android文档(写得非常好!),以更好地了解它如何(以及为什么)通过这种机制工作。 特别是,有关在活动之间发送数据的这篇文章与您非常相关。

===============>>#2 票数:-2

如果要在另一个活动中使用这些值,则只需将这些值与用于启动新活动的意图一起传递。

MainActivity.java

Intent i = new Intent(MainActivity.this,SecondActivity.class);
i.putExtra("Bang1",bang1);
i.putExtra("Bang2",bang2);
i.putExtra("Bang3",bang3);
...

您可以通过以下方式在SecondActivity.java文件中获取它们:

Intent i =getIntent();
int bang1 = i.getIntExtra("Bang1");
...

但是相反,选择显示的字符串名称,我建议创建一个新类来将字符串名称存储为最终字符串常量,以避免发生任何错误。

或者,您可以直接将这些变量声明为静态变量,并通过将它们的名称引用为在SecondActivity中访问它们:

 int bang1 = MainActivity.bang1;

  ask by Charchit Garg translate from so

未解决问题?本站智能推荐: