Android 页面跳转与数据传递示例代码
这段代码是一个 Android 应用程序的主活动 (MainActivity),它实现了一个简单的用户信息输入页面。
-
导入了一些 Android 类,用于处理页面跳转、视图操作、按钮点击、文本输入等操作。
-
创建了一个 MainActivity 类,并继承自 AppCompatActivity 类,用于创建活动。
-
声明了一些变量,用于获取用户输入的文本、处理单选按钮和复选框的选中状态。
-
重写了 onCreate 方法,表示活动创建时执行的操作。
-
在 onCreate 方法中,通过 findViewById 方法找到对应 id 的控件,并为按钮和单选按钮组设置了监听器。
-
单选按钮组的监听器会在选中状态改变时,显示选中的单选按钮的文本内容。
-
按钮的监听器会在按钮被点击时,获取用户输入的文本和选中的性别和爱好,并通过意图 (Intent) 传递到下一个活动 (tttActivity)。
-
定义了一个私有方法 getHobby,用于获取选中的爱好,并返回一个拼接后的字符串。
-
该代码实现了基本的页面跳转和数据传递功能,并通过 Toast 类显示了短暂提示信息。
代码示例:
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
private Button mbu1;
private EditText ed1,ed2,ed3;
private RadioGroup rgGender;
private RadioButton rbMale;
private RadioButton rbFemale;
private CheckBox cbSing;
private CheckBox cbDance;
private CheckBox cbRead;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
rgGender = findViewById(R.id.rg_1);
mbu1 = findViewById(R.id.bu1);
ed1= findViewById(R.id.e_1);
ed2= findViewById(R.id.e_2);
ed3= findViewById(R.id.e_3);
rbMale = findViewById(R.id.nan);
rbFemale = findViewById(R.id.nv);
cbSing = findViewById(R.id.cg);
cbDance = findViewById(R.id.tw);
cbRead = findViewById(R.id.ds);
rgGender.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
RadioButton radioButton = group.findViewById(checkedId);
Toast.makeText(MainActivity.this,radioButton.getText(), Toast.LENGTH_SHORT).show();
}
});
mbu1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this,tttActivity.class);
intent.putExtra('mz',ed1.getText().toString());
intent.putExtra('yx',ed2.getText().toString());
intent.putExtra('mm',ed3.getText().toString());
intent.putExtra('gender', rbMale.isChecked() ? '男' : '女');
intent.putExtra('hobby', getHobby());
startActivity(intent);
}
});
}
private String getHobby() {
StringBuilder hobby = new StringBuilder();
if (cbSing.isChecked()) {
hobby.append('唱歌 ');
}
if (cbDance.isChecked()) {
hobby.append('跳舞 ');
}
if (cbRead.isChecked()) {
hobby.append('读书 ');
}
return hobby.toString().trim();
}
}
原文地址: https://www.cveoy.top/t/topic/bPHu 著作权归作者所有。请勿转载和采集!