除了没有在Android平台 [英] Addition isn't working in Android

查看:153
本文介绍了除了没有在Android平台的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

一个很奇怪的事情发生了。我有一个应用从答案计算积分。它的工作非常好,但因为我的定位(有没有影响在所有点我计数系统上),他们没有适当增加;相反,它们被添加像字符串。

2 + 4 + 5 = 245,之前是11 ...任何想法?

例如:

 如果(antworten.geo == 0)
            punktzahl + = 10;
        否则如果(antworten.geo == 1)
            punktzahl + = 8;
        否则如果(antworten.geo == 2)
            punktzahl + = 4;

喜欢我从微调得到的答案

 公共类geo_listener实现OnItemSelectedListener {
    私人布尔我= FALSE;
    @覆盖
    公共无效onItemSelected(适配器视图<>母公司,观景,INT POS,长I​​D){
        如果(我== TRUE){
            。antworten.geo_str = parent.getSelectedItem()的toString();
            antworten.geo = parent.getSelectedItemPosition();
            吐司选择= Toast.makeText(parent.getContext(),parent.getSelectedItem()的toString(),Toast.LENGTH_SHORT。);
            chosen.show();}
        其他{
            我=真;
            antworten.geo = parent.getSelectedItemPosition();
        }
    }
    @覆盖
    公共无效onNothingSelected(适配器视图<>为arg0){
        // TODO自动生成方法存根    }
}

筛选我定义所有这些VAR和strngs

 公共类antworten {
    公共静态INT rennen = 0; // 1 - 2 Rennen - Langsam
    公共静态字符串rennen_str;
    公共静态INT NEXT_ITEM = 0; // 1 - 2Küchenmesser - 皮斯托尔3 - 4 STIFT - 棒球施拉格
    公共静态字符串next_item_str;
    公共静态INT家庭= 0; // 1 - 2 JA - Nein
    公共静态字符串family_str;
    公共静态INT场所= 0; // 1 - 2大街 - Zuhause 3 - 4 Arbeit - 餐厅5 - Öffentlicher广场
    公共静态字符串place_str;
    公共静态INT地理= 0; // 1 - 贝格2 - 米尔3 - 土地
    公共静态字符串geo_str;
    公共静态INT病毒= 0; // 1 - 拉夫特2 - 3 Speichel - 布卢特4 - 魏斯nicht
    公共静态字符串virus_str;
    公共静态INT步行= 0; // 1 - 2Küchenmesser - 皮斯托尔3 - 4 STIFT - 棒球施拉格
    公共静态字符串walk_str;
    公共静态INT super_m = 0; // 1 - 2 JA - Nein
    公共静态字符串super_m_str;
    公共静态INT APO = 0; // 1 - 2 JA - Nein
    公共静态字符串apo_str;
    公共静态INT死亡= 0; // 1 - 2 Kopfschuss - Abtrennen 3 - 4 Gegengift - 师范Todesarten
    公共静态字符串death_str;
    公共静态长punktzahl;
    公共静态字符串punk_str;
}

和这样的,我数着点

 包com.zombies.survive;进口android.app.Activity;
进口android.content.Context;
进口android.content.Intent;
进口android.os.Bundle;
进口android.text.method.ScrollingMovementMethod;
进口android.view.View;
进口android.widget.Button;
进口android.widget.TextView;公共类result_activity延伸活动{
    静态上下文mContext;
    / **当第一次创建活动调用。 * /
    @覆盖
    公共无效的onCreate(捆绑savedInstanceState){
        super.onCreate(savedInstanceState);
        的setContentView(R.layout.result);
        字符串ant_ren = getApplicationContext()的getString(R.string.ant1)。
        字符串ant_itm = getApplicationContext()的getString(R.string.ant2)。
        字符串ant_fam = getApplicationContext()的getString(R.string.ant3)。
        字符串ant_plc = getApplicationContext()的getString(R.string.ant4)。
        字符串ant_geo = getApplicationContext()的getString(R.string.ant5)。
        字符串ant_vir = getApplicationContext()的getString(R.string.ant6)。
        字符串ant_wlk = getApplicationContext()的getString(R.string.ant7)。
        字符串ant_sup = getApplicationContext()的getString(R.string.ant8)。
        字符串ant_apo = getApplicationContext()的getString(R.string.ant9)。
        字符串ant_tot = getApplicationContext()的getString(R.string.ant10)。
        // Rennen Frage
            如果(antworten.rennen == 0)
                antworten.punktzahl + = 5;
            其他
                antworten.punktzahl + = 10;
        //项目Frage
            如果(antworten.next_item == 0)
                antworten.punktzahl + = 6;
            否则如果(antworten.next_item == 1)
                antworten.punktzahl + = 10;
            否则如果(antworten.next_item == 2)
                antworten.punktzahl + = 2;
            否则,如果(antworten.next_item == 3)
                antworten.punktzahl + = 5;
        // FAMILIE Frage
            如果(antworten.family == 0)
                antworten.punktzahl + = 3;
            其他
                antworten.punktzahl + = 10;
        //将Frage
            如果(antworten.place == 0)
                antworten.punktzahl + = 6;
            否则如果(antworten.place == 1)
                antworten.punktzahl + = 2;
            否则如果(antworten.place == 2)
                antworten.punktzahl + = 8;
            否则,如果(antworten.place == 3)
                antworten.punktzahl + = 10;
            否则,如果(antworten.place == 4)
                antworten.punktzahl + = 5;
            否则,如果(antworten.place == 5)
                antworten.punktzahl + = 6;
            否则,如果(antworten.place == 6)
                antworten.punktzahl + = 5;
        //地理Frage
            如果(antworten.geo == 0)
                antworten.punktzahl + = 10;
            否则如果(antworten.geo == 1)
                antworten.punktzahl + = 8;
            否则如果(antworten.geo == 2)
                antworten.punktzahl + = 4;
        //病毒Frage
            如果(antworten.virus == 0)
                antworten.punktzahl + = 2;
            否则如果(antworten.virus == 1)
                antworten.punktzahl + = 4;
            否则如果(antworten.virus == 2)
                antworten.punktzahl + = 10;
            否则,如果(antworten.virus == 3)
                antworten.punktzahl + = 1;
        //行走Frage
            如果(antworten.walk == 0)
                antworten.punktzahl + = 6;
            否则如果(antworten.walk == 1)
                antworten.punktzahl + = 8;
            否则如果(antworten.walk == 2)
                antworten.punktzahl + = 10;
            否则,如果(antworten.walk == 3)
                antworten.punktzahl + = 3;
            否则,如果(antworten.walk == 4)
                antworten.punktzahl + = 1;
        //超级市场Frage
            如果(antworten.super_m == 0)
                antworten.punktzahl + = 10;
            否则如果(antworten.super_m == 1)
                antworten.punktzahl + = 5;
       // Apotheken Frage
            如果(antworten.apo == 0)
                antworten.punktzahl + = 10;
            否则如果(antworten.apo == 1)
                antworten.punktzahl + = 5;
       // TOTEN Frage
            如果(antworten.death == 0)
                antworten.punktzahl + = 7;
            否则如果(antworten.death == 1)
                antworten.punktzahl + = 4;
            否则如果(antworten.death == 2)
                antworten.punktzahl + = 5;
            否则,如果(antworten.death == 3)
                antworten.punktzahl + = 10;
        antworten.punk_str =将String.valueOf(antworten.punktzahl);
        TextView的ergebniss =(的TextView)findViewById(R.id.res_txt);
        ergebniss.setMovementMethod(新ScrollingMovementMethod());
        ergebniss.setText(R.string.wenn_eine_zombie_apokalypse_eintreten_w_rde_steht_die_chance_f_r_dich_zu_berleben_bei_ + antworten.punk_str +%\\ n \\ n \\ n+ ant_ren + ant_itm + ant_plc + ant_fam + ant_geo + ant_vir + ant_wlk + ant_sup + ant_apo + ant_tot);        按钮back_but =(按钮)findViewById(R.id.back_but);
        back_but.setOnClickListener(新View.OnClickListener(){            @覆盖
            公共无效的onClick(视图v){
                意图I =新意图(result_activity.this,home.class);
                startActivity(ⅰ);            }
        });
    }
}


解决方案

您确定要添加在一起punktzahl变量是从类antworten的人吗?你写antworten.geo,但不antworten.punktzahl。

如果你试图查找该变量在IDE你在哪里到达?

A very strange thing happened. I had an app to calculate points from answers. It worked very well, but since my localization (which has NO impact at all on my counting system of points) they aren't added properly; instead, they are added like a string.

2+4+5 = 245, before it was 11...Any ideas?

Example:

            if(antworten.geo == 0)
            punktzahl += 10;
        else if(antworten.geo == 1)
            punktzahl += 8;
        else if(antworten.geo == 2)
            punktzahl += 4;

Like this I get the answer from a spinner

    public class geo_listener implements OnItemSelectedListener{
    private boolean i = false;
    @Override
    public void onItemSelected(AdapterView<?> parent, View view, int pos, long id){
        if(i == true){
            antworten.geo_str = parent.getSelectedItem().toString();
            antworten.geo = parent.getSelectedItemPosition();
            Toast chosen = Toast.makeText(parent.getContext(), parent.getSelectedItem().toString(), Toast.LENGTH_SHORT);
            chosen.show();}
        else{
            i = true;
            antworten.geo = parent.getSelectedItemPosition();
        }
    }
    @Override
    public void onNothingSelected(AdapterView<?> arg0) {
        // TODO Auto-generated method stub

    }
}

Like this I am defining all those vars and strngs

    public class antworten{
    public static int rennen = 0; // 1 - Rennen 2 - Langsam
    public static String rennen_str;
    public static int next_item = 0;  //1 - Küchenmesser 2 - Pistole 3 - Stift 4 - Baseball-Schläger
    public static String next_item_str;
    public static int family = 0; // 1 - Ja  2 - Nein
    public static String family_str;
    public static int place = 0; // 1 - Straße 2 - Zuhause 3 - Arbeit 4 - Restaurant 5 - Öffentlicher Platz
    public static String place_str;
    public static int geo = 0; // 1 - Berg 2 - Meer 3 - Land
    public static String geo_str;
    public static int virus = 0; // 1 - Luft 2 - Speichel 3 - Blut 4 - Weiß nicht
    public static String virus_str;
    public static int walk = 0; //1 - Küchenmesser 2 - Pistole 3 - Stift 4 - Baseball-Schläger
    public static String walk_str;
    public static int super_m = 0; // 1 - Ja  2 - Nein
    public static String super_m_str;
    public static int apo = 0; // 1 - Ja 2 - Nein
    public static String apo_str;
    public static int death = 0; // 1 - Kopfschuss 2 - Abtrennen 3 - Gegengift 4 - Normale Todesarten
    public static String death_str;
    public static long punktzahl;
    public static String punk_str;
}

and like this I am counting the points

    package com.zombies.survive;

import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.text.method.ScrollingMovementMethod;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

public class result_activity extends Activity {
    static Context mContext;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.result);
        String ant_ren = getApplicationContext().getString(R.string.ant1);
        String ant_itm = getApplicationContext().getString(R.string.ant2);
        String ant_fam = getApplicationContext().getString(R.string.ant3);
        String ant_plc = getApplicationContext().getString(R.string.ant4);
        String ant_geo = getApplicationContext().getString(R.string.ant5);
        String ant_vir = getApplicationContext().getString(R.string.ant6);
        String ant_wlk = getApplicationContext().getString(R.string.ant7);
        String ant_sup = getApplicationContext().getString(R.string.ant8);
        String ant_apo = getApplicationContext().getString(R.string.ant9);
        String ant_tot = getApplicationContext().getString(R.string.ant10);
        //Rennen Frage
            if(antworten.rennen == 0)
                antworten.punktzahl += 5;
            else
                antworten.punktzahl += 10;
        //Item Frage
            if(antworten.next_item == 0)
                antworten.punktzahl += 6;
            else if(antworten.next_item == 1)
                antworten.punktzahl += 10;
            else if(antworten.next_item == 2)
                antworten.punktzahl += 2;
            else if(antworten.next_item == 3)
                antworten.punktzahl += 5;
        //Familie Frage
            if(antworten.family == 0)
                antworten.punktzahl += 3;
            else
                antworten.punktzahl += 10;
        //Place Frage
            if(antworten.place == 0)
                antworten.punktzahl += 6;
            else if(antworten.place == 1)
                antworten.punktzahl += 2;
            else if(antworten.place == 2)
                antworten.punktzahl += 8;
            else if(antworten.place == 3)
                antworten.punktzahl += 10;
            else if(antworten.place == 4)
                antworten.punktzahl += 5;
            else if(antworten.place == 5)
                antworten.punktzahl += 6;
            else if(antworten.place == 6)
                antworten.punktzahl += 5;
        //Geo Frage
            if(antworten.geo == 0)
                antworten.punktzahl += 10;
            else if(antworten.geo == 1)
                antworten.punktzahl += 8;
            else if(antworten.geo == 2)
                antworten.punktzahl += 4;
        //Virus Frage
            if(antworten.virus == 0)
                antworten.punktzahl += 2;
            else if(antworten.virus == 1)
                antworten.punktzahl += 4;
            else if(antworten.virus == 2)
                antworten.punktzahl += 10;
            else if(antworten.virus == 3)
                antworten.punktzahl += 1;
        //Walk Frage
            if(antworten.walk == 0)
                antworten.punktzahl += 6;
            else if(antworten.walk == 1)
                antworten.punktzahl += 8;
            else if(antworten.walk == 2)
                antworten.punktzahl += 10;
            else if(antworten.walk == 3)
                antworten.punktzahl += 3;
            else if(antworten.walk == 4)
                antworten.punktzahl += 1;
        //Supermarkt Frage
            if(antworten.super_m == 0)
                antworten.punktzahl += 10;
            else if(antworten.super_m == 1)
                antworten.punktzahl += 5;
       //Apotheken Frage
            if(antworten.apo == 0)
                antworten.punktzahl += 10;
            else if(antworten.apo == 1)
                antworten.punktzahl += 5;
       //Töten Frage
            if(antworten.death == 0)
                antworten.punktzahl += 7;
            else  if(antworten.death == 1)
                antworten.punktzahl += 4;
            else  if(antworten.death == 2)
                antworten.punktzahl += 5;
            else  if(antworten.death == 3)
                antworten.punktzahl += 10; 
        antworten.punk_str = String.valueOf(antworten.punktzahl);
        TextView ergebniss = (TextView)findViewById(R.id.res_txt);
        ergebniss.setMovementMethod(new ScrollingMovementMethod());
        ergebniss.setText(R.string.wenn_eine_zombie_apokalypse_eintreten_w_rde_steht_die_chance_f_r_dich_zu_berleben_bei_ + antworten.punk_str + "%\n\n\n"+ant_ren+ant_itm+ant_plc+ant_fam+ant_geo+ant_vir+ant_wlk+ant_sup+ant_apo+ant_tot);

        Button back_but = (Button)findViewById(R.id.back_but);
        back_but.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                Intent i = new Intent(result_activity.this,home.class);
                startActivity(i);

            }
        });
    }
}

解决方案

Are you sure that the punktzahl-variable you are adding together is the one from class antworten? You're writing antworten.geo, but not antworten.punktzahl.

If you try to look up the variable in the IDE where do you arrive?

这篇关于除了没有在Android平台的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆