Android Studioのケース-基本的な学生情報(パラメーター転送)

Android Studioのケース-基本的な学生情報(パラメーター転送)

概要

学生の名前、専攻、年齢、スコアを追加できる機能の実現を完了するためのAPPを設計します。ここでは、主に写真やコードの説明に基づいて、プロジェクトの作成プロセスなどについて詳しくは説明しません。これがすべての人のプロジェクトコードのネットワークディスクアドレスです。必要に応じて、自分でダウンロードできます。
https://pan.baidu.com/s/1qJ84gxQ44oj08g6TrYKorA
抽出コード:ouun

1.インターフェースレイアウト

activity_main_xmlファイル

<TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="学生信息"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintHorizontal_bias="0.309"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="0.28" />
    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="姓名"
        android:id="@+id/name_edit"/>
    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="专业"
        android:id="@+id/major_edit"/>
    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="年龄"
        android:inputType="number"
        android:id="@+id/age_edit"/>
    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="成绩"
        android:inputType="numberDecimal"
        android:id="@+id/score_edit"/>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="发送信息"
            android:id="@+id/btn_save"
            android:layout_weight="1"/>
        <Button
            android:id="@+id/btn_submit"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="添加信息"
            android:layout_weight="1"/>
    </LinearLayout>

info_xmlファイル

<TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:textSize="25sp"
        android:textColor="@color/teal_200"
        android:id="@+id/infoshow"/>

エフェクト画像
ここに画像の説明を挿入

第二に、メインコード

mainactivity.java

public class MainActivity extends AppCompatActivity {
    
    
    Button btn_submit;
    Button btn_save;
    EditText name_edit;
    EditText major_edit;
    EditText age_edit;
    EditText score_edit;
    ArrayList<student> students=new ArrayList<student>();
    @Override
    protected  void onCreate(Bundle savedInstanceState) {
    
    
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        name_edit=(EditText) findViewById(R.id.name_edit);
        major_edit=(EditText) findViewById(R.id.major_edit);
        age_edit=(EditText) findViewById(R.id.age_edit);
        score_edit=(EditText) findViewById(R.id.score_edit);
        btn_save=(Button) findViewById(R.id.btn_save);
        btn_save.setOnClickListener(new View.OnClickListener() {
    
    
            @Override
            public void onClick(View v) {
    
    
                String name=name_edit.getText().toString();
                String major=major_edit.getText().toString();
                int age=Integer.parseInt(age_edit.getText().toString());
                double score=Double.parseDouble(score_edit.getText().toString());
                student s=new student(name,major,age,score);
                students.add(s);
                name_edit.setText(" ");
                major_edit.setText(" ");
                age_edit.setText(" ");
                score_edit.setText(" ");
            }
        });
        btn_submit=(Button) findViewById(R.id.btn_submit);
        btn_submit.setOnClickListener(new View.OnClickListener()  {
    
    
            @Override
            public void onClick(View v) {
    
    
                Intent intent=new Intent();
                intent.setClass(MainActivity.this,info.class);
                intent.putExtra("students",students);
                startActivity(intent);
            }
        });
    }
}

student.java

public class student implements Serializable{
    
    
    private String name;
    private String major;
    private int  age;
    private double score;
    student(String name,String major,int age,double score){
    
    
        this.name=name;
        this.major=major;
        this.age=age;
        this.score=score;
    }

    public String getName() {
    
    
        return name;
    }

    public void setName(String name) {
    
    

        this.name = name;
    }

    public String getMajor() {
    
    
        return major;
    }

    public void setMajor(String major) {
    
    
        this.major = major;
    }

    public int getAge() {
    
    

        return age;
    }

    public void setAge(int age) {
    
    
        this.age = age;
    }

    public double getScore() {
    
    
        return score;
    }

    public void setScore(double score) {
    
    
        this.score = score;
    }
}

info.java

public class info extends AppCompatActivity {
    
    
    TextView infoshow;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    
    
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_info);
        infoshow=(TextView) findViewById(R.id.infoshow);
        Bundle bundle=getIntent().getExtras();
        ArrayList<student> students=( ArrayList<student>) bundle.get("students");
        for(student s:students){
    
    
            infoshow.append("姓名:"+s.getName()+";专业:"+s.getMajor()+";年龄:"+s.getAge()+";成绩:"+s.getScore()+"\n");
        }
    }
}

3、効果のデモンストレーション

情報の追加
ここに画像の説明を挿入
クリックして情報を送信すると、情報バーがクリアされ、
ここに画像の説明を挿入
[情報の追加]をクリックすると、以前に追加した情報が表示されます。
ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/QWERTYzxw/article/details/115186728