首页 > 其他分享 >5.11

5.11

时间:2024-06-14 18:33:49浏览次数:22  
标签:answerRadioGroup resultText private 5.11 import totalScore android

今日学习情况总结

与小组成员讨论如何完善咨询中的自我测试页面的测试

代码行量:159行

学习所花时间:1h

 

 

 

package com.example.memosystem.activity;

import android.content.DialogInterface;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
import android.widget.Toast;

import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;

import com.example.memosystem.R;

public class xinggeceshi extends AppCompatActivity {

// 问题数组和对应分值数组
private String[] questions = {
"在社交活动中,我更喜欢",
"我更倾向于",
"我认为自己更多的是",
"在工作中,我更注重",
"我更喜欢",
"我更倾向于",
"我在生活中更重视",
"我更喜欢",
"当面对冲突时,我更倾向于",
"我更容易被哪种类型的人吸引",
"我更倾向于",
"我更倾向于",
"我在处理问题时更偏向于",
"我更希望自己",
"我更愿意"
};

private int[][] scores = {
{1,2},
{2,1},
{2,1},
{2,1},
{1,2},
{2,1},
{1,2},
{2,1},
{1,2},
{1,2},
{2,1},
{1,2},
{1,2},
{1,2},
{2,1},
};

private int currentQuestionIndex = 0;
private int totalScore = 0;

// Define SharedPreferences key for storing total score
private static final String SCORE_KEY = "SCORE_KEY";

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_xinggeceshi);

// Load the total score from SharedPreferences
SharedPreferences sharedPref = getPreferences(MODE_PRIVATE);
totalScore = sharedPref.getInt(SCORE_KEY, 0);

final TextView questionTextView = findViewById(R.id.questionTextView);
final RadioGroup answerRadioGroup = findViewById(R.id.answerRadioGroup);
final Button submitButton = findViewById(R.id.submitButton);

// Show the first question
showQuestion(questionTextView, answerRadioGroup);

submitButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
int selectedRadioButtonId = answerRadioGroup.getCheckedRadioButtonId();
if (selectedRadioButtonId != -1) {
RadioButton selectedRadioButton = findViewById(selectedRadioButtonId);
int selectedAnswerIndex = answerRadioGroup.indexOfChild(selectedRadioButton);
totalScore += scores[currentQuestionIndex][selectedAnswerIndex];
currentQuestionIndex++;
if (currentQuestionIndex < questions.length) {
showQuestion(questionTextView, answerRadioGroup);
} else {
showResult();
}

// Save the updated total score to SharedPreferences
SharedPreferences.Editor editor = sharedPref.edit();
editor.putInt(SCORE_KEY, totalScore);
editor.apply();
}
}
});
}

private String[][] options = {
{"和大家一起热热闹闹 ", "一个人安静地呆着"},
{"计划和组织事情 ", "随遇而安,随心而动"},
{"独立和自主", "和群和合作"},
{"细节和精确", "整体和大局"},
{"通过逻辑和事实解决问题", "通过感觉和直觉解决问题"},
{"认真分析和思考", "凭直觉和第一印象行事"},
{"稳定和安全", "冒险和挑战"},
{"规则和秩序", "灵活和自由"},
{"寻求妥协和解决方案", "坚持自己的原则和立场"},
{"理性和理智的人", "感性和热情的人"},
{"认真计划未来", "活在当下"},
{"喜欢被别人认同和赞扬", "自我肯定和内在满足"},
{"理性分析和推理", "感性和直觉决策"},
{"保持稳定和安逸", "不断学习和进步"},
{"保持既定的计划和步调", "灵活应对生活的变化"},
};

private void showQuestion(TextView questionTextView, RadioGroup answerRadioGroup) {
questionTextView.setText(questions[currentQuestionIndex]);
answerRadioGroup.removeAllViews(); // Clear previous options

// Add options for the current question
for (String optionText : options[currentQuestionIndex]) {
RadioButton radioButton = new RadioButton(this);
radioButton.setText(optionText);
answerRadioGroup.addView(radioButton);
}
}

private void showResult() {
String resultText;
if (totalScore >= 15 && totalScore <= 20) {
resultText = "您可能具有外向、开放、寻求刺激的性格特质,并表现出较高的社交取向和活力。";
} else if (totalScore >= 21 && totalScore <= 30) {
resultText = "您可能具有理性、深思熟虑、冷静分析的性格特征,展现出稳定而务实的思维方式。";
}else if (totalScore >= 31 && totalScore <= 45) {
resultText = "您可能呈现内向、审慎、趋向于稳定和安逸的性格特质,更倾向于独立思考和独处。";
}else if (totalScore >= 46 && totalScore <= 60) {
resultText = "您可能展现出情感丰富、富有想象力、重视个人成长和情感体验的性格特点。";
}
else {
resultText = " ?";
}

// Display the result on screen
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("性格测试评估结果");
builder.setMessage(resultText);
builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
// Do nothing, just close the dialog
}
});
builder.show();
}
}

标签:answerRadioGroup,resultText,private,5.11,import,totalScore,android
From: https://www.cnblogs.com/tianpeisen/p/18248442

相关文章

  • 2024.5.11
    8-3【Python0004】验证6174猜想分数10全屏浏览作者 doublebest单位 石家庄铁道大学【题目描述】1955年,卡普耶卡(D.R.Kaprekar)对4位数字进行了研究,发现一个规律:对任意各位数字不相同的4位数,使用各位数字能组成的最大数减去能组成的最小数,对得......
  • 5.11
    今日完成的主要内容是有关于数据库的实验四的内容数据库的备份与恢复实验在用Windows身份验证进入SSMS后找到服务器对象,右键点击备份设备点击新建备份设备来新建一个备份设备 然后再右键点击新建的备份设备,点击备份数据库 在数据库中找到students数据库 在介质选项中的......
  • 5.11
    数据库实验报告一CREATETABLEstudent(  snoChar(8)PRIMARYKEY,  snameVarchar(20)NULL,  sexChar(2)NULL,  sdeptVarchar(20)NULL);CREATETABLEcourse(  cnoChar(6)PRIMARYKEY,  cnameVarchar(20)NULL, );CREATETABLEsc(......
  • 5.11
    jetpackcompose搭建地铁系统页面@OptIn(ExperimentalMaterial3Api::class)@ComposablefunHomeScreen(viewModel:HomeViewModel=viewModel(factory=AppViewModelProvider.Factory)){SideEffect{viewModel.findMetroSystems()}valtabT......
  • Centos7交叉编译QT5.11.1+AArch64架构
    一、准备工作1、更新系统软件,目的是使用新版本的gcc等,还要保证磁盘空间足够1yumupdate2yuminstallgccgcc-c++3yuminstallmesa-libGL-develmesa-libGLU-develfreeglut-devel2、到linaro下载编译链工具安装aarch64(arm64)编译链工具。国产CPU,如飞腾、华为麒麟等......
  • centOs 6.10 编译 qt 5.15.11.
    centOs6.10编译qt5.15.11安装依赖库xcb依赖库qtxcb需要的依赖如何要用x11,就要在编译的时候加上-xcb选项,就要安装xcb相关的库。到时可以在config.log文件查看,缺少哪个库就安装哪个。下面是我手动安装的库和对应版本:xcb-proto-1.14.tar.gzxcb-util-image-0.......
  • 5.11 汇编语言:仿写IF条件语句
    条件语句,也称为IF-ELSE语句,是计算机编程中的一种基本控制结构。它允许程序根据条件的真假来执行不同的代码块。条件语句在处理决策和分支逻辑时非常有用。一般来说,条件语句由IF关键字、一个条件表达式、一个或多个代码块以及可选的ELSE关键字和对应的代码块组成。条件表达式的结果......
  • 服务器该如何处理大数据 45.113.203.x
    当大量设备连接服务器,大量数据上传到服务器,服务器要如何提高处理能力,来处理这些数据,数据源为设备数据。服务器如何处理数据可以由以下几个点考虑:1、排队列处理机制数据涌入服务器,但还是能够区分先后顺序,按照数据传输时序将数据摘要排入队列,然后服务器按队列依次进行处理。2、数据分......
  • 滤镜大师Polarr5.11.4泼辣修图2023免费版
    你的滤镜大师Polarr5.11.4泼辣修图2023免费版是由北京泼辣熊科技有限公司研发推出的一款功能非常专业的图像处理软件,功能非常的丰富,包含了包括曲线、HSL、高低光、色调分离、选色调整、线性调整等上百种调整工具,还支持无限历史记录、自定义滤镜、高像素原尺寸无损输出等,可以满足用......
  • KubeSphere 社区双周报 | 开源之夏已启动 | 2023.04.28-05.11
    KubeSphere社区双周报主要整理展示新增的贡献者名单和证书、新增的讲师证书以及两周内提交过commit的贡献者,并对近期重要的PR进行解析,同时还包含了线上/线下活动和布道推广等一系列社区动态。本次双周报涵盖时间为:2023.04.28-2023.05.11。贡献者名单新晋KubeSphereCon......