Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 试图让结果可见_Java_Android - Fatal编程技术网

Java 试图让结果可见

Java 试图让结果可见,java,android,Java,Android,我是一个土生土长的新手程序员,试图为我儿子的1岁生日开发一个测验应用程序(当然是给家人,不是给他) 我面临的问题是让测验结果清晰可见——并按分数顺序排列 当用户在这个测验中取得进展时,收集到两个变量:他的名字(String whatName)和他的分数(int currentScore) 在最后一个问题的末尾,我如何将这两个问题放在图表中? 最好按当前分数从最好到最差排列 谢谢大家! 编辑:我打算使用自定义类: public class results { public String endNa

我是一个土生土长的新手程序员,试图为我儿子的1岁生日开发一个测验应用程序(当然是给家人,不是给他)

我面临的问题是让测验结果清晰可见——并按分数顺序排列

当用户在这个测验中取得进展时,收集到两个变量:他的名字(String whatName)和他的分数(int currentScore)

在最后一个问题的末尾,我如何将这两个问题放在图表中? 最好按当前分数从最好到最差排列

谢谢大家!

编辑:我打算使用自定义类:

public class results {
public String endName;
public int endScore;
}
然后在最后一个方法toEndResults中实现它

public class MainActivity extends Activity {

int currentScore = 0;
ArrayList<results> result = new ArrayList<>();

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.activity_main);
}

public void toQuiz (View view) {
    EditText name = (EditText) findViewById(R.id.name_set);
    String whatName = name.getText().toString();
    setContentView(R.layout.question);
    TextView contestant = findViewById(R.id.name_quiz);
    contestant.setText(whatName);
}

public void right1 (View view) {
    currentScore++;
    toQuestion2();
}
public void wrong1 (View view) {
    toQuestion2();
}

public void toQuestion2 () {
    TextView name = findViewById(R.id.name_quiz);
    String whatName = name.getText().toString();
    setContentView(R.layout.question2);
    TextView contestant = findViewById(R.id.name_quiz);
    contestant.setText(whatName);
    display(currentScore);
}

public void right2 (View view) {
    currentScore++;
    toQuestion3();
}
public void wrong2 (View view) {
    toQuestion3();
}

public void toQuestion3 () {
    TextView name = findViewById(R.id.name_quiz);
    String whatName = name.getText().toString();
    setContentView(R.layout.question3);
    TextView contestant = findViewById(R.id.name_quiz);
    contestant.setText(whatName);
    display(currentScore);
}
public void right3 (View view) {
    currentScore++;
    toQuestion4();}

public void wrong3 (View view) {
    toQuestion4();
}

public void toQuestion4 () {
    TextView name = findViewById(R.id.name_quiz);
    String whatName = name.getText().toString();
    setContentView(R.layout.question4);
    TextView contestant = findViewById(R.id.name_quiz);
    contestant.setText(whatName);
    display(currentScore);
}

public void right4 (View view) {
    currentScore++;
    toQuestion5();
}

public void wrong4 (View view) {
    toQuestion5();
}

public void toQuestion5 () {
    TextView name = findViewById(R.id.name_quiz);
    String whatName = name.getText().toString();
    setContentView(R.layout.question5);
    TextView contestant = findViewById(R.id.name_quiz);
    contestant.setText(whatName);
    display(currentScore);
}
public void right5 (View view) {
    currentScore++;
    toQuestion6();
}

public void wrong5 (View view) {
    toQuestion6();
}

public void toQuestion6 () {
    TextView name = findViewById(R.id.name_quiz);
    String whatName = name.getText().toString();
    setContentView(R.layout.question6);
    TextView contestant = findViewById(R.id.name_quiz);
    contestant.setText(whatName);
    display(currentScore);
}
public void right6 (View view) {
    currentScore++;
    toQuestion7();
}

public void wrong6 (View view) {
    toQuestion7();
}

public void toQuestion7 () {
    TextView name = findViewById(R.id.name_quiz);
    String whatName = name.getText().toString();
    setContentView(R.layout.question7);
    TextView contestant = findViewById(R.id.name_quiz);
    contestant.setText(whatName);
    display(currentScore);
}
public void right7 (View view) {
    currentScore++;
    toQuestion8();
}

public void wrong7 (View view) {
    toQuestion8();
}

public void toQuestion8 () {
    TextView name = findViewById(R.id.name_quiz);
    String whatName = name.getText().toString();
    setContentView(R.layout.question8);
    TextView contestant = findViewById(R.id.name_quiz);
    contestant.setText(whatName);
    display(currentScore);
}
public void right8 (View view) {
    currentScore++;
    toQuestion9();
}

public void wrong8 (View view) {
    toQuestion9();
}

public void toQuestion9 () {
    TextView name = findViewById(R.id.name_quiz);
    String whatName = name.getText().toString();
    setContentView(R.layout.question9);
    TextView contestant = findViewById(R.id.name_quiz);
    contestant.setText(whatName);
    display(currentScore);
}
public void right9 (View view) {
    currentScore++;
    toQuestion10();
}

public void wrong9 (View view) {
    toQuestion10();
}

public void toQuestion10 () {
    TextView name = findViewById(R.id.name_quiz);
    String whatName = name.getText().toString();
    setContentView(R.layout.question10);
    TextView contestant = findViewById(R.id.name_quiz);
    contestant.setText(whatName);
    display(currentScore);
}
public void right10 (View view) {
    currentScore++;
    toEndResults();
}

public void wrong10 (View view) {
    toEndResults();
}

public void toEndResults () {
    TextView name = findViewById(R.id.name_quiz);
    String whatName = name.getText().toString();
    setContentView(R.layout.endResults);
    TextView contestant = findViewById(R.id.name_quiz);
    contestant.setText(whatName);
    display(currentScore);
    result.add(0, whatName, currentScore));
}

private void display(int number) {
    TextView quantityTextView = (TextView) findViewById(R.id.score_quiz);
    quantityTextView.setText("" + number);
}

}
公共类MainActivity扩展活动{
int currentScore=0;
ArrayList结果=新建ArrayList();
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
requestWindowFeature(窗口。功能\u无\u标题);
setContentView(R.layout.activity_main);
}
公共测试(视图){
EditText名称=(EditText)findViewById(R.id.name\u集);
字符串whatName=name.getText().toString();
setContentView(R.layout.question);
TextView参赛者=findViewById(R.id.name\U测验);
参赛者:setText(什么名字);
}
公共无效权限1(视图){
currentScore++;
问题2();
}
公共无效错误1(视图){
问题2();
}
公共问题2(){
TextView name=findviewbyd(R.id.name\u测验);
字符串whatName=name.getText().toString();
setContentView(右布局问题2);
TextView参赛者=findViewById(R.id.name\U测验);
参赛者:setText(什么名字);
显示(当前分数);
}
公共无效权限2(视图){
currentScore++;
问题3();
}
公共无效错误2(视图){
问题3();
}
公共问题3(){
TextView name=findviewbyd(R.id.name\u测验);
字符串whatName=name.getText().toString();
setContentView(右布局问题3);
TextView参赛者=findViewById(R.id.name\U测验);
参赛者:setText(什么名字);
显示(当前分数);
}
公共无效权限3(视图){
currentScore++;
toQuestion4();}
公共无效错误3(视图){
问题4();
}
公共问题4(){
TextView name=findviewbyd(R.id.name\u测验);
字符串whatName=name.getText().toString();
setContentView(右布局问题4);
TextView参赛者=findViewById(R.id.name\U测验);
参赛者:setText(什么名字);
显示(当前分数);
}
公共无效权限4(视图){
currentScore++;
问题5();
}
公共无效错误4(视图){
问题5();
}
公开问题5(){
TextView name=findviewbyd(R.id.name\u测验);
字符串whatName=name.getText().toString();
setContentView(右布局问题5);
TextView参赛者=findViewById(R.id.name\U测验);
参赛者:setText(什么名字);
显示(当前分数);
}
公共无效权限5(视图){
currentScore++;
问题6();
}
公共无效错误5(视图){
问题6();
}
公众提问6(){
TextView name=findviewbyd(R.id.name\u测验);
字符串whatName=name.getText().toString();
setContentView(右布局问题6);
TextView参赛者=findViewById(R.id.name\U测验);
参赛者:setText(什么名字);
显示(当前分数);
}
公共无效权限6(视图){
currentScore++;
问题7();
}
公共无效错误6(视图){
问题7();
}
公共问题7(){
TextView name=findviewbyd(R.id.name\u测验);
字符串whatName=name.getText().toString();
setContentView(右布局问题7);
TextView参赛者=findViewById(R.id.name\U测验);
参赛者:setText(什么名字);
显示(当前分数);
}
公共无效权限7(视图){
currentScore++;
问题8();
}
公共无效错误7(视图){
问题8();
}
公共问题8(){
TextView name=findviewbyd(R.id.name\u测验);
字符串whatName=name.getText().toString();
setContentView(右布局问题8);
TextView参赛者=findViewById(R.id.name\U测验);
参赛者:setText(什么名字);
显示(当前分数);
}
公共无效权限8(视图){
currentScore++;
问题9();
}
公共无效错误8(视图){
问题9();
}
公共问题9(){
TextView name=findviewbyd(R.id.name\u测验);
字符串whatName=name.getText().toString();
setContentView(右布局问题9);
TextView参赛者=findViewById(R.id.name\U测验);
参赛者:setText(什么名字);
显示(当前分数);
}
公共无效权限9(视图){
currentScore++;
问题10();
}
公共无效错误9(视图){
问题10();
}
公众提问10(){
TextView name=findviewbyd(R.id.name\u测验);
字符串whatName=name.getText().toString();
setContentView(右布局问题10);
TextView参赛者=findViewById(R.id.name\U测验);
参赛者:setText(什么名字);
显示(当前分数);
}
公共无效权限10(视图){
currentScore++;
toEndResults();
}
公共无效错误10(视图){
toEndResults();
}
对结果的公开无效(){
TextView name=findviewbyd(R.id.name\u测验);
字符串whatName=name.getText().toString();
setContentView(R.layout.endResults);
TextView参赛者=findViewById(R.id.name\U测验);
参赛者:setText(什么名字);
显示(当前分数);
结果。添加(0,whatName,currentScore));
}
专用无效显示(整数){
TextView quantityTextView=(TextView)findViewById(R.id.score\u测验);
quantityTextView.setText(“+”数字);
}
}

据我所知,您需要的解决方案必须简单,不需要专业

  • 在您的名字中使用ListView_quick.xml (或者使用更复杂的适配器)刚开始时比RecyclerView更容易理解

  • 在您的toEndResults()方法中,将分数写入csv文件,读取以前的分数并填充记录列表(逗号分隔值)(

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <ListView android:id="@+id/list" android:layout_height="wrap_content" android:layout_width="match_parent"> </ListView> </LinearLayout>
    setContentView(R.layout.activity_list_view_android_example);
    
    // Get ListView object from xml
     listView = (ListView) findViewById(R.id.list);
    
    //Create an arraylist populated with your values here
    //then pass them into an adapter
    
     ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
     android.R.layout.simple_list_item_1, android.R.id.text1, values);
     listView.setAdapter(adapter);