NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Diskuze: Neviem čo s tým

V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Tomáš Šálek:29.3.2017 19:39

vytvoril som si projekt nahral som ho do mobilu ale ukázala sa mi len tam sivá obrazovka s nadpisom aplikácie

 
Odpovědět
29.3.2017 19:39
Avatar
Odpovídá na Tomáš Šálek
David Sedlář :29.3.2017 19:54

Zkus trošku víc popsat o co jde, možná ukázka kódu a lepší popis problému, použitý software, takhle ti tu nikdo moc neporadí :)

 
Nahoru Odpovědět
29.3.2017 19:54
Avatar
Tomáš Šálek:29.3.2017 19:58

public class Calculator extends AppCompatActivity {
private float mCislo1;
private char mOperacia;
private TextView mTV;

public static void main(String[]args) {
int choice;
int x = 0;
int y = 0;
int sum;
PrintStream out;
Scanner input;
Calculator calc = new Calculator();
try {

do {
System.out.prin­tln("Calculator Program");
System.out.prin­tln("--------------\n");
System.out.prin­tln("1. Add");
System.out.prin­tln("2. Subtract");
System.out.prin­tln("3. Multiply");
System.out.prin­tln("4. Divide");
System.out.prin­tln("5. Mod");
System.out.prin­tln("6. Power");
System.out.prin­tln("99. End Program\n");
System.out.prin­tln("Enter Choice");
input = new Scanner(System.in);
choice = input.nextInt();
while ((choice < 1 || choice>6) && choice != 99) {
System.out.prin­tln("Please enter 1,2,3,4,5,or6:");
choice = input.nextInt();
}
if (choice != 99) {
System.out.prin­tln("Please enter 2 numbers only:");
x = input.nextInt();
y = input.nextInt();
}
switch (choice) {
case 1:
sum = calc.add(x, y);
System.out.prin­tf("The sum is %s\n\n", sum);
System.out.prin­tln(x + "+" + y + "=" + sum);
break;
case 2:
sum = calc.sub(x, y);
System.out.prin­tf("The answer is%d\n\n", sum);
System.out.prin­tln(x + "-" + y + "=" + sum);
break;
case 3:
sum = calc.multi(x, y);
System.out.prin­tf("The answer is%d\n\n", sum);
System.out.prin­tln(x + "*" + y + "="+ sum);
break;
case 4:
try {
sum = calc.div(x, y);
System.out.prin­tf("The answer is %d\n\n", sum);
System.out.prin­tln(x + "/" + y + "=" + sum);
} catch (Exception e) {
System.out.prin­tln("\nError: Cannot Divide by zero\n\n");
}
break;
case 5:
sum = calc.mod(x, y);
System.out.prin­tf("The mod is %d\n\n", sum);
System.out.prin­tln(x + "%" + y + "=" + sum);
break;
case 6:
sum = calc.pow(x, y);
System.out.prin­tf("The answer is %d\n\n", sum);
System.out.prin­tln(x + "^" + y + "=" + sum);
break;
}
}

while (choice != 99);
input.close();
System.out.prin­tln("Ending program...");

} catch (Exception e) {
System.out.prin­tln("ERROR:So­me error occured");
e.printStackTra­ce();
}
}
public int add(int num1, int num2) {
int sum;
sum=num1+num2;
return sum;
}
public int sub(int num1,int num2) {
int sum;
sum= num1-num2;
return sum;
}
public int multi(int num1,int num2) {
int sum;
sum= num1*num2;
return sum;
}
public int div(int num1,int num2) {
int sum;
sum= num1/num2;
return sum;
}
public int mod(int num1,int num2) {
int sum;
sum=num1% num2;
return sum;
}
public int pow (int base, int exp) {
int sum = 1;
if (exp == 0) {
sum=1;
}
while (exp> 0){
sum=sum*base;
exp--; }
return sum;
}
public class Vstup2 extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(sa­vedInstanceSta­te);
setContentView(R­.layout.activi­ty_calculator);
final EditText mET =(EditText) findViewById(R­.id.editText);
final TextView mTV =(TextView) findViewById(R­.id.text);
Button mBT1=(Button) findViewById(R­.id.button);
Button mBT2=(Button) findViewById(R­.id.button2);
Button mBT3=(Button) findViewById(R­.id.button3);
Button mBT4=(Button) findViewById(R­.id.button4);
Button mBT5=(Button) findViewById(R­.id.button5);
Button mBT6=(Button) findViewById(R­.id.button6);
Button mBT7=(Button) findViewById(R­.id.button7);
Button mBT8=(Button) findViewById(R­.id.button8);
Button mBT9=(Button) findViewById(R­.id.button9);
Button mBT10=(Button) findViewById(R­.id.button10);
Button mBT11=(Button) findViewById(R­.id.button11);
Button mBT12=(Button) findViewById(R­.id.button12);
Button mBT13=(Button) findViewById(R­.id.button13);
Button mBT14=(Button) findViewById(R­.id.button14);
Button mBT15=(Button) findViewById(R­.id.button15);
Button mBT16=(Button) findViewById(R­.id.button16);
Button mBT17=(Button) findViewById(R­.id.button17);
Button mBT18=(Button) findViewById(R­.id.button18);
mBT13.setOnClic­kListener(new View.OnClickLis­tener() {
@Override
public void onClick(View v) {
pridajZnak('0');
}
});

mBT9.setOnClic­kListener(new View.OnClickLis­tener() {
@Override
public void onClick(View v) {
pridajZnak('1');
}
});

mBT10.setOnClic­kListener(new View.OnClickLis­tener() {
@Override
public void onClick(View v) {
pridajZnak('2');
}
});

mBT11.setOnClic­kListener(new View.OnClickLis­tener() {
@Override
public void onClick(View v) {
pridajZnak('3');
}
});

mBT5.setOnClic­kListener(new View.OnClickLis­tener() {
@Override
public void onClick(View v) {
pridajZnak('4');
}
});

mBT6.setOnClic­kListener(new View.OnClickLis­tener() {
@Override
public void onClick(View v) {
pridajZnak('5');
}
});

mBT7.setOnClic­kListener(new View.OnClickLis­tener() {
@Override
public void onClick(View v) {
pridajZnak('6');
}
});

mBT1.setOnClic­kListener(new View.OnClickLis­tener() {
@Override
public void onClick(View v) {
pridajZnak('7');
}
});

mBT2.setOnClic­kListener(new View.OnClickLis­tener() {
@Override
public void onClick(View v) {
pridajZnak('8');
}
});

mBT3.setOnClic­kListener(new View.OnClickLis­tener() {
@Override
public void onClick(View v) {
pridajZnak('9');
}
});

mBT12.setOnClic­kListener(new View.OnClickLis­tener() {
@Override
public void onClick(View v) {
mCislo1 = Float.valueOf(mTV­.getText().toS­tring());
mOperacia = '*';
mTV.setText("0");
}
});

mBT16.setOnClic­kListener(new View.OnClickLis­tener() {
@Override
public void onClick(View v) {
mCislo1 = Float.valueOf(mTV­.getText().toS­tring());
mOperacia = '/';
mTV.setText("0");
}
});

mBT8.setOnClic­kListener(new View.OnClickLis­tener() {
@Override
public void onClick(View v) {
mCislo1 = Float.valueOf(mTV­.getText().toS­tring());
mOperacia = '-';
mTV.setText("0");
}
});

mBT4.setOnClic­kListener(new View.OnClickLis­tener() {
@Override
public void onClick(View v) {
mCislo1 = Float.valueOf(mTV­.getText().toS­tring());
mOperacia = '+';
mTV.setText("0");
}
});

mBT17.setOnClic­kListener(new View.OnClickLis­tener() {
@Override
public void onClick(View v) {
mTV.setText("0");
}
});

mBT14.setOnClic­kListener(new View.OnClickLis­tener() {
@Override
public void onClick(View v) {
String text = mTV.getText()­.toString();
if (!text.contain­s(".")) {
text = text + '.';
}
mTV.setText(text);
}
});

mBT18.setOnClic­kListener(new View.OnClickLis­tener() {
@Override
public void onClick(View v) {
String text = mTV.getText()­.toString();
if (!text.equals("0")) {
if (text.startsWith("-")) {
text = text.replace("-","");
}
else {
text = "-" + text;
}
}
mTV.setText(text);
}
});

mBT15.setOnClic­kListener(new View.OnClickLis­tener() {
@Override
public void onClick(View v) {
float cislo2 = Float.valueOf(mTV­.getText().toS­tring());
float vysledok = 0;
if (mOperacia == '*') {
vysledok = mCislo1 * cislo2;
} else if (mOperacia == '/') {
vysledok = mCislo1 / cislo2;
} else if (mOperacia == '-') {
vysledok = mCislo1 - cislo2;
} else if (mOperacia == '+') {
vysledok = mCislo1 + cislo2;
}

mTV.setText("" + vysledok);
}
});

}

public void pridajZnak(char c) {
String text = mTV.getText()­.toString();
if (text.equals("0")) {
text = "" + c;
} else {
text = text + c;
}
mTV.setText(text);
}}}

 
Nahoru Odpovědět
29.3.2017 19:58
Avatar
Tomáš Šálek:29.3.2017 20:00

dal som run project(Android Studio) a na mobile sa mi len ukázala obrazovka bez tlačidiel proste len nadpis a nič viac

 
Nahoru Odpovědět
29.3.2017 20:00
Avatar
Tomáš Šálek:29.3.2017 20:26

ale čo mám zle

 
Nahoru Odpovědět
29.3.2017 20:26
Avatar
zitekv
Člen
Avatar
zitekv:29.3.2017 20:53

Ahoj, těžko poradit, když to nic nedělá, ani chybu. Budeš muset zkoušet postupně.
Úplně znova od začátku, nový projekt atd.
Asi bych začal bych tím nejjednodušším co jde. Např. Hello world. Určitě v Android Studiu budou nějaké příklady. A až ti půjde World, můžeš postupně přidávat a zkoušet, kdy to chodit přestane a pak už ti bude možné poradit lépe.
Nic lepšího ti v této situaci neporadím.

Editováno 29.3.2017 20:54
 
Nahoru Odpovědět
29.3.2017 20:53
Avatar
Atrament
Člen IT Redactor Gang
Avatar
Odpovídá na Tomáš Šálek
Atrament:30.3.2017 9:34

Nefunguje ti to, protože jsi stvořil jakýsi zvláštní mix androidí, a konzolové aplikace:) Když tohle spustíš tak to čeká na vstup v konzoli a tamtéž to vypisuje výstup.

 
Nahoru Odpovědět
30.3.2017 9:34
Avatar
Tomáš Šálek:30.3.2017 12:40

Nevieš mi poradiť ako to mám spraviť aby to fungovalo
PS má to byť kalkulačka

 
Nahoru Odpovědět
30.3.2017 12:40
Avatar
Atrament
Člen IT Redactor Gang
Avatar
Odpovídá na Tomáš Šálek
Atrament:30.3.2017 13:44

Jistě - tohle smaž, projdi si místní tutoriály o programování pro Android a pak to napiš správně.

 
Nahoru Odpovědět
30.3.2017 13:44
Avatar
Tomáš Šálek:30.3.2017 13:47

nevieš čo z toho mám vyhodiť

 
Nahoru Odpovědět
30.3.2017 13:47
Avatar
gcx11
Tvůrce
Avatar
Odpovídá na Tomáš Šálek
gcx11:30.3.2017 13:57

http://www.itnetwork.cz/java/android
Tam se postupně dostaneš až na kalkulačku. Tohle nemůže fungovat, protože na Androidu se moc dobře do příkazové řádky nedostaneš a okenní aplikace funguje v principu jinak, než aplikace v konzoli.

 
Nahoru Odpovědět
30.3.2017 13:57
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 11 zpráv z 11.