Yhym, więc tak...Zrobiłem tak, że za jednym razem działało to,że pokazywało wpisz poprawne wartości... Potem coś próbowałem dodać tą pętle itp...
I się dalej crashuje...
Ach, co do pętli, to... Przyznaje szczerze, że nie mam pojęcia jak ją dodać...
Dodałem pętle, potem chciałem ją wypisać, lecz mi nie wychodzi ?
Bo gdzie nie wstawi, to czegoś nie rozpoznaje.. 🙁
A to już na razie ostatni etap ?
@Coders_LabLiczę na Ciebie 😉😃
A z tego kursu na razie przeszedłem instalowanie Android Studio ?
Spoiler
package com.example.aplikacja;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.List;
public class Main2Activity extends AppCompatActivity {
EditText ilo;
EditText ko;
TextView dystans;
TextView wypiszDystans;
TextView koszt;
TextView suma;
List <Dane> listaDanych = new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
loadData();
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
final RecyclerView recycler = (RecyclerView) findViewById(R.id.recycler_vi);
recycler.setLayoutManager(new LinearLayoutManager(this));
final MainAdapter adapter = new MainAdapter(listaDanych);
recycler.setAdapter(adapter);
TextView koszt = findViewById(R.id.koszt);
Button button = (Button)findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
EditText ilo = findViewById(R.id.Ilosc1);
EditText ko = findViewById(R.id.Koszt1);
EditText pole = findViewById(R.id.Km1);
TextView dystans = findViewById(R.id.dystans);
TextView wypiszDystans = findViewById(R.id.wypiszDystans);
if ( ko.getText().toString().isEmpty() || ilo.getText().toString().isEmpty()) {
Toast toast = Toast.makeText(getApplicationContext(),"Wprowadź poprawne dane", Toast.LENGTH_SHORT);
toast.show();
}
else if (pole.getText().toString().isEmpty()){
Toast toast = Toast.makeText(getApplicationContext(),"Wprowadź poprawne dane", Toast.LENGTH_SHORT);
toast.show();
}
else {
Float km1 = Float.valueOf(pole.getText().toString());
Float num1 = Float.valueOf(ilo.getText().toString());
Float num2 = Float.valueOf(ko.getText().toString());
Float sum = num1 * num2;
Dane nowyWpis = new Dane(sum, km1);
listaDanych.add(nowyWpis);
adapter.notifyDataSetChanged();
saveData();
}
}
});
Button button_reset = findViewById(R.id.button5);
button_reset.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
listaDanych.clear();
saveData();
}
});
}
private void saveData() {
SharedPreferences sharedPreferences = getSharedPreferences("shared preferences", MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
Gson gson = new Gson();
String json = gson.toJson(listaDanych);
editor.putString("task list", json);
editor.apply();
}
private void loadData() {
SharedPreferences sharedPreferences = getSharedPreferences("shared preferences", MODE_PRIVATE);
Gson gson = new Gson();
String json = sharedPreferences.getString("task list", null);
Type type = new TypeToken<ArrayList<Dane>>() {}.getType();
listaDanych = gson.fromJson(json, type);
if (json != null) {
SharedPreferences.Editor editor = sharedPreferences.edit();
json = gson.toJson(listaDanych);
editor.putString("task list", json);
editor.apply();
}
else {
Intent intent = new Intent(this, Main2Activity.class);
startActivity(intent);
}
}
}
Próbowałem za savedata(), przed, po float km1, ogólnie to w elsie... Ale nic nie daje... ?🙁
Edit:: Dobra, jednak ten Android jest dziwny, bo spróbowałem jeszcze raz i tenelse ifteraz jakoś zadziałał
No to w takim razie zostałaby tylko pętla... ?
W sensie włożenie jej do kodu, i wypisanie 😃