Commit 4e9a8c20 authored by charley.punshon's avatar charley.punshon

Song screen

parent 73392276
This diff is collapsed.
package com.example.soulfood_assignment2;
import android.app.Activity;
import android.util.Log;
import java.util.ArrayList;
public class AsyncTask extends android.os.AsyncTask<ArrayList<String>, Integer, ArrayList<String>> {
public ArrayList<String> chineseResults;
@Override
protected ArrayList<String> doInBackground(ArrayList<String>... params) {
databaseInterface dbi = new databaseInterface();
chineseResults = dbi.getPlaylistByAttributes(databaseInterface.Cuisine.chinese, databaseInterface.Vibe.any, databaseInterface.Time.any);
return chineseResults;
}
}
......@@ -2,6 +2,7 @@ package com.example.soulfood_assignment2;
import android.os.AsyncTask;
import android.util.Log;
import android.support.v7.app.AppCompatActivity;
import java.util.ArrayList;
......@@ -10,10 +11,12 @@ public class ChillAsyncTask extends AsyncTask<Void, Void, ArrayList<String>> {
@Override
protected ArrayList<String> doInBackground(Void... params) {
databaseInterface dbi = new databaseInterface();
chillResults = dbi.getPlaylistByAttributes(databaseInterface.Cuisine.any, databaseInterface.Vibe.chill, databaseInterface.Time.any);
chillResults = dbi.getPlaylistByAttributes(databaseInterface.Cuisine.any, databaseInterface.Vibe.chill, databaseInterface.Time.any);
for(int i = 0; i < chillResults.size(); i++) {
Log.d("ChillResults!!", chillResults.get(i));
}
return chillResults;
}
......
package com.example.soulfood_assignment2;
import android.os.AsyncTask;
import android.util.Log;
import java.util.ArrayList;
public class ChineseAsyncTask extends AsyncTask<Void, Void, ArrayList<String>> {
public ArrayList<String> chineseResults;
@Override
protected ArrayList<String> doInBackground(Void... params) {
databaseInterface dbi = new databaseInterface();
chineseResults = dbi.getPlaylistByAttributes(databaseInterface.Cuisine.chinese, databaseInterface.Vibe.any, databaseInterface.Time.any);
for (int i = 0; i < chineseResults.size(); i++) {
Log.d("HappyResults!!", chineseResults.get(i));
}
return chineseResults;
}
}
package com.example.soulfood_assignment2;
import android.content.Context;
import android.os.AsyncTask;
import android.util.Log;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import java.util.ArrayList;
public class ThaiAsyncTask extends AsyncTask<Void, Void, ArrayList<String>> {
public ArrayList<String> thaiResults;
public class ThaiAsyncTask extends AsyncTask<Void, Void, ArrayAdapter<String>> {
public ArrayList<String> thaiResults = new ArrayList<>();
public ListView listView;
public Context context;
public ThaiAsyncTask(Context context) {
this.context = context;
}
@Override
protected ArrayList<String> doInBackground(Void... params) {
databaseInterface dbi = new databaseInterface();
thaiResults = dbi.getPlaylistByAttributes(databaseInterface.Cuisine.thai, databaseInterface.Vibe.any, databaseInterface.Time.any);
for(int i = 0; i < thaiResults.size(); i++) {
Log.d("ThaiResults!!", thaiResults.get(i));
protected ArrayAdapter<String> doInBackground(Void... params) {
try {
databaseInterface dbi = new databaseInterface();
thaiResults = dbi.getPlaylistByAttributes(databaseInterface.Cuisine.thai, databaseInterface.Vibe.any, databaseInterface.Time.any);
ArrayAdapter thaiAdapter = new ArrayAdapter<String>(
context, android.R.layout.simple_list_item_1, thaiResults
);
return thaiAdapter;
} catch (Exception e) {
e.printStackTrace();
}
return thaiResults;
return null;
}
@Override
protected void onPostExecute(ArrayAdapter thaiAdapter) {
listView.setAdapter(thaiAdapter);
}
}
......@@ -29,10 +29,6 @@ public class build_playlist extends AppCompatActivity {
ArrayAdapter<String> timeOfDayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item, timeOfDay);
timeOfDaySpinner.setAdapter(timeOfDayAdapter);
String[] occasions = new String[] {"None", "Dinner Party", "Family Meal", "Solo Meal"};
Spinner occasionsSpinner = findViewById(R.id.occasion_dropdown);
ArrayAdapter<String> occasionsAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item, occasions);
occasionsSpinner.setAdapter(occasionsAdapter);
}
......
package com.example.soulfood_assignment2;
import android.app.Activity;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
......@@ -10,8 +11,8 @@ import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.SearchView;
import android.widget.TextView;
import java.util.AbstractList;
import java.util.ArrayList;
import java.util.Arrays;
......@@ -32,6 +33,8 @@ public class searchScreen extends AppCompatActivity {
public ArrayList<String> happyResults;
public ArrayList<String> energeticResults;
public static ArrayList<String> testArray;
public Intent vibeView;
......@@ -52,19 +55,20 @@ public class searchScreen extends AppCompatActivity {
searchResults.setAdapter(adapter);
searchResults.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
switch (position) {
case 0:
AsyncTask asyncTask =new AsyncTask();
asyncTask.execute();
chineseResults = asyncTask.chineseResults;
ChineseAsyncTask chineseAsyncTask = new ChineseAsyncTask();
chineseAsyncTask.execute();
chineseResults = chineseAsyncTask.chineseResults;
tagNamePage("Chinese", chineseResults);
break;
case 1:
ThaiAsyncTask thaiAsyncTask = new ThaiAsyncTask();
ThaiAsyncTask thaiAsyncTask = new ThaiAsyncTask(this);
thaiAsyncTask.listView = findViewById(R.id.tagListView);
thaiAsyncTask.execute();
thaiResults = thaiAsyncTask.thaiResults;
tagNamePage("Thai", thaiResults);
break;
case 2:
......@@ -160,4 +164,6 @@ public class searchScreen extends AppCompatActivity {
return super.onCreateOptionsMenu(menu);
}
}
\ No newline at end of file
......@@ -36,7 +36,6 @@ public class swtViewScreen extends AppCompatActivity {
public ArrayAdapter<String> chineseAdapter;
public ArrayAdapter<String> thaiAdapter;
public ArrayAdapter<String> indianAdapter;
public ArrayAdapter<String> japaneseAdapter;
public ArrayAdapter<String> italianAdapter;
......@@ -62,13 +61,12 @@ public class swtViewScreen extends AppCompatActivity {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_swt_view_screen);
String title = getIntent().getStringExtra("tag_name");
final ArrayList<String> chineseIDs = getIntent().getStringArrayListExtra("results_array");
final ArrayList<String> testArray = getIntent().getStringArrayListExtra("results_array");
tagNameView = findViewById(R.id.tagTextView);
tagNameView.setText(title);
chineseResults.addAll(Arrays.asList(getResources().getStringArray(R.array.chineseSearchResultsArray)));
thaiResults.addAll(Arrays.asList(getResources().getStringArray(R.array.thaiSearchResultsArray)));
indianResults.addAll(Arrays.asList(getResources().getStringArray(R.array.indianSearchResultsArray)));
japaneseResults.addAll(Arrays.asList(getResources().getStringArray(R.array.japaneseSearchResultsArray)));
italianResults.addAll(Arrays.asList(getResources().getStringArray(R.array.italianSearchResultsArray)));
......@@ -82,9 +80,6 @@ public class swtViewScreen extends AppCompatActivity {
chineseAdapter = new ArrayAdapter<String>(
this, android.R.layout.simple_list_item_1, chineseResults
);
thaiAdapter = new ArrayAdapter<String>(
this, android.R.layout.simple_list_item_1, thaiResults
);
indianAdapter = new ArrayAdapter<String>(
this, android.R.layout.simple_list_item_1, indianResults
);
......@@ -122,9 +117,7 @@ public class swtViewScreen extends AppCompatActivity {
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
switch (position) {
case 0:
SpotifyClass spotifyClass = MainActivity.spotifyClass;
spotifyClass.pauseSong();
spotifyClass.playSong("0RvQJoaiQC3sYafoDTdiEJ");
songPage(chineseResults.get(0));
break;
case 1:
songPage(chineseResults.get(1));
......@@ -148,12 +141,14 @@ public class swtViewScreen extends AppCompatActivity {
}
});
} else if(tagNameView.getText().toString().equals("Songs with 'Thai' Tag")) {
tagResults.setAdapter(thaiAdapter);
tagResults.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
switch (position) {
case 0:
SpotifyClass spotifyClass = MainActivity.spotifyClass;
spotifyClass.pauseSong();
spotifyClass.playSong("0RvQJoaiQC3sYafoDTdiEJ");
break;
case 1:
songPage(thaiResults.get(1));
......
......@@ -33,13 +33,6 @@
<item>Deja Vu</item>
</string-array>
<string-array name="thaiSearchResultsArray">
<item>คู่คอง (เพลงประกอบละคร นาคี)</item>
<item>ซมซาน</item>
<item>ตลอดเวลา</item>
<item>เพลงไม่รัก</item>
<item>หนูคนเดียว</item>
<item>เมด อิน ไทยแลนด์ </item>
<item>เมื่อไม่มีเธอ</item>
</string-array>
<string-array name="indianSearchResultsArray">
<item>Lullaby from Home</item>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment