• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Zmienne się nie aktualizują czasami

Object Storage Arubacloud
0 głosów
57 wizyt
pytanie zadane 23 lutego 2020 w Java przez Lampards Obywatel (1,130 p.)

Witam jestem początkującym programistą w androidzie z javą i mam problem z zmiennymi .

Problem polega z Zmiennymi Wyb1,Wyb2 oraz Wyb3 do którym jest przypisane wypisanie zmiennej numberasString 

problem z moim kodzie polega iż czasami ponowne wykonanie Do() Zmienne te nie wypisują zaktualizowanych liczb

przypisanych po nich po wykonaniu obliczeń

package com.example.goodmath;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.util.Log;
import android.view.View;
import android.widget.ImageButton;
import android.widget.ProgressBar;
import android.widget.TextView;
import android.widget.Toast;

import java.util.Random;

public class GameSingleActivity extends AppCompatActivity {

    TextView proba,Dz,W1,W2,W3,l;
    private int a,b,c,l1,l2,p=0,h;
    ImageButton Wyb1,Wyb2,Wyb3;
    ProgressBar mProgressBar;
    CountDownTimer mCountDownTimer;
    int i=0;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_game_single);

        proba = findViewById(R.id.textView12);
        Dz = findViewById(R.id.Dzialanie);
        W1 = findViewById(R.id.Wpozycja1);
        W2 = findViewById(R.id.Wpozycja2);
        W3 = findViewById(R.id.Wpozycja3);
        l = findViewById(R.id.Level);
        Wyb1 = findViewById(R.id.imageButton11);
        Wyb2 = findViewById(R.id.imageButton12);
        Wyb3 = findViewById(R.id.imageButton13);
        mProgressBar=findViewById(R.id.progressBar);
        l.setText("0");



        if (getIntent().getExtras()!=null) {
            int buttonPressed = getIntent().getExtras().getInt(MenuGameActivity.INTENT_KEY);

            if (buttonPressed == MenuGameActivity.FIRST_OPTION) {
                // first button is clicked
                proba.setText("dodawanie");
                Do();
            } else if (buttonPressed == MenuGameActivity.SECOND_OPTION) {
                //second button is clicked
                proba.setText("odejmowanie");
            } else if (buttonPressed == MenuGameActivity.THIRD_OPTION) {
                //second button is clicked
                proba.setText("odejmowanie");
            }else if (buttonPressed == MenuGameActivity.FOURTH_OPTION) {
                //second button is clicked
                proba.setText("odejmowanie");
            }else if (buttonPressed == MenuGameActivity.FIFTH_OPTION) {
                //second button is clicked
                proba.setText("odejmowanie");
            }else if (buttonPressed == MenuGameActivity.SIXTH_OPTION) {
                //second button is clicked
                proba.setText("odejmowanie");
            }

        }
    }
    public void Do()
    {
        los();
        proba.setText("dodawanie");
        c = Dodawanie(a,b);
        String numberAsString = String.valueOf(c);
        //Toast.makeText(getApplicationContext(), numberAsString, Toast.LENGTH_LONG).show();
        //W1.setText(numberAsString);
        Random liczba = new Random();
        h = liczba.nextInt(5);
        String H = String.valueOf(h);
        String L1 = String.valueOf(l1);
        String L2 = String.valueOf(l2);
        Toast.makeText(getApplicationContext(), H, Toast.LENGTH_LONG).show();
        //////////////////////////////////////////////////////////////////////
        mProgressBar.setProgress(i);
        mCountDownTimer=new CountDownTimer(15000,1000) {

            @Override
            public void onTick(long millisUntilFinished) {
                Log.v("Log_tag", "Tick of Progress"+ i+ millisUntilFinished);
                i++;
                mProgressBar.setProgress((int)i*100/(15000/1000));

            }

            @Override
            public void onFinish() {
                //Do what you want
                i++;
                //mProgressBar.setProgress(100);
            }
        };
        mCountDownTimer.start();
        ///////////////////////////////////////////
            if(h==0||h==3) {
                W1.setText(numberAsString);
                Wyb1.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        p++;
                        String L = String.valueOf(p);
                        l.setText(L);
                        Do();
                        i=0;
                    }
                });
                W2.setText(L1);
                Wyb2.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        Toast.makeText(getApplicationContext(), "Zle", Toast.LENGTH_LONG).show();
                    }
                });
                W3.setText(L2);
                Wyb3.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        Toast.makeText(getApplicationContext(), "Zle", Toast.LENGTH_LONG).show();
                    }
                });
            }
            else if(h==1||h==4){
                W2.setText(numberAsString);
                Wyb2.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        p++;
                        String L = String.valueOf(p);
                        l.setText(L);
                        Do();
                        i=0;
                    }
                });
                W1.setText(L1);
                Wyb1.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        Toast.makeText(getApplicationContext(), "Zle", Toast.LENGTH_LONG).show();
                    }
                });
                W3.setText(L2);
                Wyb3.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        Toast.makeText(getApplicationContext(), "Zle", Toast.LENGTH_LONG).show();
                    }
                });
            if(h==2||h==5)
                {
                    W3.setText(numberAsString);
                    Wyb3.setOnClickListener(new View.OnClickListener() {
                        @Override
                        public void onClick(View v) {
                            p++;
                            String L = String.valueOf(p);
                            l.setText(L);
                            Do();
                            i=0;
                        }
                    });
                    W1.setText(L1);
                    Wyb1.setOnClickListener(new View.OnClickListener() {
                        @Override
                        public void onClick(View v) {
                            Toast.makeText(getApplicationContext(), "Zle", Toast.LENGTH_LONG).show();
                        }
                    });
                    W2.setText(L2);
                    Wyb2.setOnClickListener(new View.OnClickListener() {
                        @Override
                        public void onClick(View v) {
                            Toast.makeText(getApplicationContext(), "Zle", Toast.LENGTH_LONG).show();
                        }
                    });
                }

        }
    }

    public int Dodawanie(int a,int b)
    {
        String A = String.valueOf(a);
        String B = String.valueOf(b);
        Dz.setText(A+" + "+B);
        return a + b;
    }
    public void los()
    {
        Random liczba = new Random();
        a = liczba.nextInt(101);
        b = liczba.nextInt(101);
        l1= liczba.nextInt(101)+30;
        l2= liczba.nextInt(101)+30;
        String L1 = String.valueOf(l1);
        String L2 = String.valueOf(l2);

        //W2.setText(L1);
        //W3.setText(L2);


    }



}

 

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
2 odpowiedzi 155 wizyt
pytanie zadane 5 grudnia 2018 w Java przez kvbq Obywatel (1,490 p.)
0 głosów
1 odpowiedź 1,333 wizyt
0 głosów
1 odpowiedź 212 wizyt
pytanie zadane 12 maja 2019 w C i C++ przez Tom_Ja Dyskutant (7,970 p.)

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...