Android studio基础练习02【监听器实现下拉菜单】
2023-09-14 09:14:10 时间
1. 手动拖拽实现功能键
2. 添加代码改名
代码如下
<resources>
<string name="app_name">Suke</string>
<string name="find_grade">Find Language!</string>
<string-array name="feature">
<item>高数</item>
<item>英语</item>
<item>政治</item>
<item>计算机</item>
</string-array>
</resources>
3. 更改设置
4. 功能实现
方法一
代码如下
package com.example.suke;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
private final ProgramExpert expert = new ProgramExpert();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Spinner spinner = findViewById(R.id.feature);
TextView textView = findViewById(R.id.Course);
String[] grades = {"150", "99", "100", "149"};
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
textView.setText("您" + spinner.getSelectedItem().toString() + "的成绩为:" + grades[i]);
Toast.makeText(MainActivity.this, textView.getText().toString(), Toast.LENGTH_SHORT).show();
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
}
});
}
}
注:Spinner组件不支持item点击事件,即Spinner的setOnItemClickListener无效,可以用setOnItemSelectedListener替代
Toast.makeText(MainActivity.this, text “”, Toast.LENGTH_SHORT).show();
Toast是为了提醒用户,而又不影响用户的操作的提示栏。
第一个参数:方法中的MainActivity.this表示在MainActivity这个文件里显示;
第二个参数:消息框的内容;
text在后面的引号中输入想输出的文本。
text可以替换为R.string.自己定义的文本,表示引用string下的文本的资源;
第三个参数:显示的时间;
LENGTH_SHORT表示Toast的显示时间一微秒计算,这里调用系统定义好扥时间,也可自己写入确定的时间。
必不可少的.show(); 是用来将定义好的Toast显示在MainActivity里的,如果不调用.show();方法定义的Toast就没有任何意义。
方法二
代码如下
package com.example.suke;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
private final ProgramExpert expert = new ProgramExpert();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Spinner spinner = findViewById(R.id.feature);
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
String feature = spinner.getSelectedItem().toString();
String score = expert.getScore(feature);
TextView textView = findViewById(R.id.Course);
textView.setText(score);
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
}
});
}
}
package com.example.suke;
public class ProgramExpert {
public String getScore(String feature) {
String result;
switch (feature) {
case "高数":
result = "您的高数成绩: 150分";
break;
case "英语":
result = "您的英语成绩: 99分";
break;
case "政治":
result = "您的政治成绩: 100分";
break;
case "计算机":
result = "您的计算机成绩: 149分";
break;
default:
result = "您未参加考试!!!";
}
return result;
}
}
5. 效果展示
相关文章
- [Android Studio] Android Studio使用教程(二)
- Android-----使用Button特效selector+shape
- 转__Android Studio ,基于intellij idea
- Android Studio系列教程四--Gradle基础(转载)
- 1、Android Studio集成极光推送(Jpush) 报错 java.lang.UnsatisfiedLinkError: cn.jpush.android.service.PushProtoco
- Android Studio使用总结
- Android Studio / IDEA 中.android 文件夹移动出默认位置
- Android案例手册 - Android Studio连接夜神模拟器和逍遥模拟器
- Android Studio修行手册,快速涨薪-【小提示】、【单词提醒】、【国际化】、【代码折叠】和【代码模板】
- 关于Android studio 升级到2021.1.1(大黄蜂)创建项目,兼容旧项目遇到的问题-CSDN博客
- Android问题笔记 - Android Studio日志乱码原因与解决
- Android Studio怎么快速生成set方法和get方法
- Android Studio — Could not determine java version from ‘11.0.8‘. The project uses Gradle version wh
- Android 10.0 手势导航自定义左右手势滑动返回样式UI布局
- Android android studio 项目放在源码中编译
- Android实战技巧之十九:android studio导出jar包(Module)并获得手机信息
- Android studio 运行java程序
- 超全Android零基础学习笔记(Android Studio安装教程+全套视频资料)
- Android Studio 4.2.2 Kotlin的import kotlinx.android.synthetic.main.(layout的xml名).view.*
- Android 把java文件从一个目录到另一个目录下的父类文件提示:红色波浪线
- Android Studio的报错提示:android.content.res.Resources$NotFoundException: Resource ID #0xfffffe6c
- Error:com.android.builder.internal.aapt.AaptException: Failed to crunch file E:AndroidSourceexampl
- Android studio基础练习03【miniQuiz初阶题目问答实现】
- Android Studio Cmake C++ JNI demo