Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/190.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 arrayList似乎仅在一个活动先完成时创建,而不是在另一个活动先完成时创建_Java_Android_Sqlite_Arraylist - Fatal编程技术网

Java arrayList似乎仅在一个活动先完成时创建,而不是在另一个活动先完成时创建

Java arrayList似乎仅在一个活动先完成时创建,而不是在另一个活动先完成时创建,java,android,sqlite,arraylist,Java,Android,Sqlite,Arraylist,我为学校的一个班级写的这个应用程序有问题。这是一个基本的训练跟踪应用程序 我有一个arrayList,但是Cardio.java活动只有在Strength.java首先保存了一些内容时才能保存到arrayList。不知道为什么,因为两者的代码相同 我已经仔细检查了这两个活动的代码是否相同,所以不确定为什么只有在strength.java先保存到arrayList时才会保存到arrayList。那么它工作得很好 Cardio.java Strength.java History.java 我认为如

我为学校的一个班级写的这个应用程序有问题。这是一个基本的训练跟踪应用程序

我有一个arrayList,但是Cardio.java活动只有在Strength.java首先保存了一些内容时才能保存到arrayList。不知道为什么,因为两者的代码相同

我已经仔细检查了这两个活动的代码是否相同,所以不确定为什么只有在strength.java先保存到arrayList时才会保存到arrayList。那么它工作得很好

Cardio.java Strength.java History.java 我认为如果数据库中没有力量训练的数据,那么dbUtils.getArrayListstrength\u训练将返回空ArrayList

如果活动中的列表为空,请尝试创建该列表:

ArrayList strengthWorkouts = dbUtil.getArrayList("strength_workouts");

if(strengthHistory == null) {
   strengthHistory = new ArrayList<String>();
}

strengthWorkouts.add(record);
dbUtil.saveArrayList(strengthWorkouts, "strength_workouts");

JavaScript和Java是两种完全不同的语言。
public class Strength extends AppCompatActivity {

    String exercise;
    String repCount;
    String weight;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_strength);

        Button saveButton = findViewById(R.id.btnSave);
        saveButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                DatabaseHelper dbUtil = new DatabaseHelper();

                Spinner exerciseSpinner = findViewById(R.id.listWeightType);
                exercise = exerciseSpinner.getSelectedItem().toString();
                EditText repCountText = findViewById(R.id.txtRepInput);
                repCount = repCountText.getText().toString();
                EditText weightText = findViewById(R.id.txtWeightInput);
                weight = weightText.getText().toString();

                String record = exercise + ": " + repCount + " reps, " + weight + " lbs.";

                Log.d("test", record);

                ArrayList strengthWorkouts = dbUtil.getArrayList("strength_workouts");
                Log.d("test", strengthWorkouts.toString());
                strengthWorkouts.add(record);
                dbUtil.saveArrayList(strengthWorkouts, "strength_workouts");

                Toast toast = Toast.makeText(Strength.this, "Workout Saved", Toast.LENGTH_LONG);
                toast.setGravity(0, 0, -200);
                toast.show();

            }
        });

        Button shareButton = (Button) findViewById(R.id.btnShare);
        shareButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent myIntent = new Intent(Intent.ACTION_SEND);
                myIntent.setType("text/plain");
                String shareBody = "I just completed a workout! " + exercise + ": " + repCount + " reps, " + weight + " lbs.";
                myIntent.putExtra(Intent.EXTRA_SUBJECT, shareBody);
                myIntent.putExtra(Intent.EXTRA_TEXT, shareBody);
                startActivity(Intent.createChooser(myIntent, "Share Using:"));

            }
        });


    }
}
public class History extends AppCompatActivity {

    private static final String TAG = "ListDataActivity";

    DatabaseHelper mDatabaseHelper;

    private ListView mListView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_history);

        mListView = findViewById(R.id.listView);
        DatabaseHelper dbUtils = new DatabaseHelper();
        ArrayList<String> strengthHistory = dbUtils.getArrayList("strength_workouts");


        ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(
                this,
                android.R.layout.simple_list_item_1,
                strengthHistory );

        mListView.setAdapter(arrayAdapter);
    }
}
ArrayList strengthWorkouts = dbUtil.getArrayList("strength_workouts");

if(strengthHistory == null) {
   strengthHistory = new ArrayList<String>();
}

strengthWorkouts.add(record);
dbUtil.saveArrayList(strengthWorkouts, "strength_workouts");