Android studio的登录代码,登录后跳到一个新界面,新界面为一张课程表,课程表的布局使用gridview控件,并且控件下面有三个按钮,能对课程表做出修改,删除,查询,修改界面能修改课程时间,地点以及添加课程名称,课程时间,课程地点,删除界面能删除选定课程,并且更新修改后的课程表
时间: 2023-09-29 11:10:55 浏览: 41
以下是一个简单的 Android Studio 登录代码,登录成功后跳转到一个新界面,新界面包含一个 GridView 控件和三个按钮,用于对课程表进行修改、删除和查询:
```
public class LoginActivity extends AppCompatActivity {
private EditText usernameEditText;
private EditText passwordEditText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
usernameEditText = findViewById(R.id.username_edit_text);
passwordEditText = findViewById(R.id.password_edit_text);
Button loginButton = findViewById(R.id.login_button);
loginButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String username = usernameEditText.getText().toString().trim();
String password = passwordEditText.getText().toString().trim();
// 检查用户名和密码是否正确
if (username.equals("admin") && password.equals("123456")) {
Intent intent = new Intent(LoginActivity.this, CourseTableActivity.class);
startActivity(intent);
} else {
Toast.makeText(LoginActivity.this, "用户名或密码不正确", Toast.LENGTH_SHORT).show();
}
}
});
}
}
```
在 CourseTableActivity 中,我们可以使用一个 GridView 控件来展示课程表。以下是一个示例代码:
```
public class CourseTableActivity extends AppCompatActivity {
private GridView gridView;
private ArrayList<Course> courseList;
private CourseAdapter courseAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_course_table);
// 初始化课程表数据
courseList = new ArrayList<>();
courseList.add(new Course("数学", "周一 1-2节", "教学楼101"));
courseList.add(new Course("英语", "周二 3-4节", "教学楼201"));
courseList.add(new Course("物理", "周三 5-6节", "教学楼301"));
courseList.add(new Course("化学", "周四 7-8节", "教学楼401"));
courseList.add(new Course("计算机", "周五 9-10节", "教学楼501"));
// 初始化 GridView 控件
gridView = findViewById(R.id.grid_view);
courseAdapter = new CourseAdapter(this, courseList);
gridView.setAdapter(courseAdapter);
// 初始化按钮点击事件
Button modifyButton = findViewById(R.id.modify_button);
modifyButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO: 跳转到修改课程界面
}
});
Button deleteButton = findViewById(R.id.delete_button);
deleteButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO: 跳转到删除课程界面
}
});
Button queryButton = findViewById(R.id.query_button);
queryButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO: 跳转到查询课程界面
}
});
}
private static class CourseAdapter extends BaseAdapter {
private Context context;
private ArrayList<Course> courseList;
public CourseAdapter(Context context, ArrayList<Course> courseList) {
this.context = context;
this.courseList = courseList;
}
@Override
public int getCount() {
return courseList.size();
}
@Override
public Object getItem(int position) {
return courseList.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) {
convertView = LayoutInflater.from(context).inflate(R.layout.item_course, parent, false);
}
TextView nameTextView = convertView.findViewById(R.id.name_text_view);
TextView timeTextView = convertView.findViewById(R.id.time_text_view);
TextView locationTextView = convertView.findViewById(R.id.location_text_view);
Course course = courseList.get(position);
nameTextView.setText(course.getName());
timeTextView.setText(course.getTime());
locationTextView.setText(course.getLocation());
return convertView;
}
}
}
```
在 CourseTableActivity 中,我们还需要添加修改、删除和查询课程的方法。具体实现方式可以根据具体需求进行设计,以下是一个简单的示例代码:
```
public class CourseTableActivity extends AppCompatActivity {
// ...
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_course_table);
// ...
// 初始化按钮点击事件
Button modifyButton = findViewById(R.id.modify_button);
modifyButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 跳转到修改课程界面
Intent intent = new Intent(CourseTableActivity.this, ModifyCourseActivity.class);
startActivity(intent);
}
});
Button deleteButton = findViewById(R.id.delete_button);
deleteButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 跳转到删除课程界面
Intent intent = new Intent(CourseTableActivity.this, DeleteCourseActivity.class);
startActivityForResult(intent, DELETE_COURSE_REQUEST_CODE);
}
});
Button queryButton = findViewById(R.id.query_button);
queryButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 跳转到查询课程界面
Intent intent = new Intent(CourseTableActivity.this, QueryCourseActivity.class);
startActivity(intent);
}
});
}
// 处理删除课程后的回调
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == DELETE_COURSE_REQUEST_CODE && resultCode == RESULT_OK) {
// 更新课程表数据
courseList.clear();
courseList.addAll((ArrayList<Course>) data.getSerializableExtra("courseList"));
courseAdapter.notifyDataSetChanged();
}
}
// ...
}
```
在 ModifyCourseActivity、DeleteCourseActivity 和 QueryCourseActivity 中,我们可以实现具体的修改、删除和查询课程的逻辑。以下是一个简单的示例代码:
```
public class ModifyCourseActivity extends AppCompatActivity {
private EditText nameEditText;
private EditText timeEditText;
private EditText locationEditText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_modify_course);
nameEditText = findViewById(R.id.name_edit_text);
timeEditText = findViewById(R.id.time_edit_text);
locationEditText = findViewById(R.id.location_edit_text);
Button modifyButton = findViewById(R.id.modify_button);
modifyButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO: 修改课程信息
}
});
}
}
public class DeleteCourseActivity extends AppCompatActivity {
private GridView gridView;
private ArrayList<Course> courseList;
private CourseAdapter courseAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_delete_course);
// 初始化课程表数据
courseList = new ArrayList<>();
courseList.add(new Course("数学", "周一 1-2节", "教学楼101"));
courseList.add(new Course("英语", "周二 3-4节", "教学楼201"));
courseList.add(new Course("物理", "周三 5-6节", "教学楼301"));
courseList.add(new Course("化学", "周四 7-8节", "教学楼401"));
courseList.add(new Course("计算机", "周五 9-10节", "教学楼501"));
// 初始化 GridView 控件
gridView = findViewById(R.id.grid_view);
courseAdapter = new CourseAdapter(this, courseList);
gridView.setAdapter(courseAdapter);
Button deleteButton = findViewById(R.id.delete_button);
deleteButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 删除选定课程
SparseBooleanArray selectedItems = gridView.getCheckedItemPositions();
ArrayList<Course> selectedCourses = new ArrayList<>();
for (int i = 0; i < selectedItems.size(); i++) {
int position = selectedItems.keyAt(i);
if (selectedItems.valueAt(i)) {
selectedCourses.add(courseList.get(position));
}
}
courseList.removeAll(selectedCourses);
courseAdapter.notifyDataSetChanged();
// 返回结果并关闭当前界面
Intent intent = new Intent();
intent.putExtra("courseList", courseList);
setResult(RESULT_OK, intent);
finish();
}
});
}
// ...
}
public class QueryCourseActivity extends AppCompatActivity {
private EditText nameEditText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_query_course);
nameEditText = findViewById(R.id.name_edit_text);
Button queryButton = findViewById(R.id.query_button);
queryButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String name = nameEditText.getText().toString().trim();
// 查询课程信息
// ...
// 返回查询结果并关闭当前界面
Intent intent = new Intent();
intent.putExtra("courseList", courseList);
setResult(RESULT_OK, intent);
finish();
}
});
}
}
```