commit 1046393b9567fea62cb3695210ae14a93e05b067 Author: Nezumi <123229563+Nez27@users.noreply.github.com> Date: Wed Feb 8 10:24:43 2023 +0700 Initial commit diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..dfe0770 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +# Auto detect text files and perform LF normalization +* text=auto diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..aa724b7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,15 @@ +*.iml +.gradle +/local.properties +/.idea/caches +/.idea/libraries +/.idea/modules.xml +/.idea/workspace.xml +/.idea/navEditor.xml +/.idea/assetWizardSettings.xml +.DS_Store +/build +/captures +.externalNativeBuild +.cxx +local.properties diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/.idea/compiler.xml b/.idea/compiler.xml new file mode 100644 index 0000000..fb7f4a8 --- /dev/null +++ b/.idea/compiler.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/discord.xml b/.idea/discord.xml new file mode 100644 index 0000000..30bab2a --- /dev/null +++ b/.idea/discord.xml @@ -0,0 +1,7 @@ + + + + + \ No newline at end of file diff --git a/.idea/gradle.xml b/.idea/gradle.xml new file mode 100644 index 0000000..a2d7c21 --- /dev/null +++ b/.idea/gradle.xml @@ -0,0 +1,19 @@ + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..bdd9278 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,10 @@ + + + + + + + + + \ No newline at end of file diff --git a/app/.gitignore b/app/.gitignore new file mode 100644 index 0000000..42afabf --- /dev/null +++ b/app/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle new file mode 100644 index 0000000..9d8ce3c --- /dev/null +++ b/app/build.gradle @@ -0,0 +1,40 @@ +plugins { + id 'com.android.application' +} + +android { + namespace 'com.capstone.foodify' + compileSdk 33 + + defaultConfig { + applicationId "com.capstone.foodify" + minSdk 24 + targetSdk 33 + versionCode 1 + versionName "1.0" + + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + } + + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' + } + } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } +} + +dependencies { + + implementation 'androidx.appcompat:appcompat:1.6.0' + implementation 'com.google.android.material:material:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' + implementation 'com.google.android.material:material:1.8.0'; + testImplementation 'junit:junit:4.13.2' + androidTestImplementation 'androidx.test.ext:junit:1.1.5' + androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1' +} \ No newline at end of file diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro new file mode 100644 index 0000000..481bb43 --- /dev/null +++ b/app/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/app/src/androidTest/java/com/capstone/foodify/ExampleInstrumentedTest.java b/app/src/androidTest/java/com/capstone/foodify/ExampleInstrumentedTest.java new file mode 100644 index 0000000..91b203c --- /dev/null +++ b/app/src/androidTest/java/com/capstone/foodify/ExampleInstrumentedTest.java @@ -0,0 +1,26 @@ +package com.capstone.foodify; + +import android.content.Context; + +import androidx.test.platform.app.InstrumentationRegistry; +import androidx.test.ext.junit.runners.AndroidJUnit4; + +import org.junit.Test; +import org.junit.runner.RunWith; + +import static org.junit.Assert.*; + +/** + * Instrumented test, which will execute on an Android device. + * + * @see Testing documentation + */ +@RunWith(AndroidJUnit4.class) +public class ExampleInstrumentedTest { + @Test + public void useAppContext() { + // Context of the app under test. + Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); + assertEquals("com.capstone.foodify", appContext.getPackageName()); + } +} \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..a6d3f94 --- /dev/null +++ b/app/src/main/AndroidManifest.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/assets/font/bebas.ttf b/app/src/main/assets/font/bebas.ttf new file mode 100644 index 0000000..ead2c4d Binary files /dev/null and b/app/src/main/assets/font/bebas.ttf differ diff --git a/app/src/main/java/com/capstone/foodify/Fragment/BasketFragment.java b/app/src/main/java/com/capstone/foodify/Fragment/BasketFragment.java new file mode 100644 index 0000000..c15e963 --- /dev/null +++ b/app/src/main/java/com/capstone/foodify/Fragment/BasketFragment.java @@ -0,0 +1,20 @@ +package com.capstone.foodify.Fragment; + +import android.os.Bundle; + +import androidx.fragment.app.Fragment; + +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; + +import com.capstone.foodify.R; + +public class BasketFragment extends Fragment { + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, + Bundle savedInstanceState) { + // Inflate the layout for this fragment + return inflater.inflate(R.layout.fragment_basket, container, false); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/capstone/foodify/Fragment/FavouriteFragment.java b/app/src/main/java/com/capstone/foodify/Fragment/FavouriteFragment.java new file mode 100644 index 0000000..57e8167 --- /dev/null +++ b/app/src/main/java/com/capstone/foodify/Fragment/FavouriteFragment.java @@ -0,0 +1,20 @@ +package com.capstone.foodify.Fragment; + +import android.os.Bundle; + +import androidx.fragment.app.Fragment; + +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; + +import com.capstone.foodify.R; + +public class FavouriteFragment extends Fragment { + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, + Bundle savedInstanceState) { + // Inflate the layout for this fragment + return inflater.inflate(R.layout.fragment_favourite, container, false); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/capstone/foodify/Fragment/HomeFragment.java b/app/src/main/java/com/capstone/foodify/Fragment/HomeFragment.java new file mode 100644 index 0000000..6902402 --- /dev/null +++ b/app/src/main/java/com/capstone/foodify/Fragment/HomeFragment.java @@ -0,0 +1,20 @@ +package com.capstone.foodify.Fragment; + +import android.os.Bundle; + +import androidx.fragment.app.Fragment; + +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; + +import com.capstone.foodify.R; + +public class HomeFragment extends Fragment { + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, + Bundle savedInstanceState) { + // Inflate the layout for this fragment + return inflater.inflate(R.layout.fragment_home, container, false); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/capstone/foodify/Fragment/ProfileFragment.java b/app/src/main/java/com/capstone/foodify/Fragment/ProfileFragment.java new file mode 100644 index 0000000..76e0abe --- /dev/null +++ b/app/src/main/java/com/capstone/foodify/Fragment/ProfileFragment.java @@ -0,0 +1,37 @@ +package com.capstone.foodify.Fragment; + +import android.app.Activity; +import android.content.Intent; +import android.os.Bundle; + +import androidx.fragment.app.Fragment; + +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.Button; + +import com.capstone.foodify.R; +import com.capstone.foodify.SignInActivity; + +public class ProfileFragment extends Fragment { + + Button btnSignUp; + + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, + Bundle savedInstanceState) { + // Inflate the layout for this fragment + View rootView = inflater.inflate(R.layout.fragment_profile, container, false); + btnSignUp = (Button) rootView.findViewById(R.id.sign_up_button); + btnSignUp.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + Intent i =new Intent(getActivity(), SignInActivity.class); + startActivity(i); + ((Activity) getActivity()).overridePendingTransition(0,0); + } + }); + return rootView; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/capstone/foodify/Fragment/SearchFragment.java b/app/src/main/java/com/capstone/foodify/Fragment/SearchFragment.java new file mode 100644 index 0000000..8b4bb29 --- /dev/null +++ b/app/src/main/java/com/capstone/foodify/Fragment/SearchFragment.java @@ -0,0 +1,20 @@ +package com.capstone.foodify.Fragment; + +import android.os.Bundle; + +import androidx.fragment.app.Fragment; + +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; + +import com.capstone.foodify.R; + +public class SearchFragment extends Fragment { + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, + Bundle savedInstanceState) { + // Inflate the layout for this fragment + return inflater.inflate(R.layout.fragment_search, container, false); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/capstone/foodify/MainActivity.java b/app/src/main/java/com/capstone/foodify/MainActivity.java new file mode 100644 index 0000000..b56dc03 --- /dev/null +++ b/app/src/main/java/com/capstone/foodify/MainActivity.java @@ -0,0 +1,80 @@ +package com.capstone.foodify; + +import androidx.annotation.NonNull; +import androidx.appcompat.app.AppCompatActivity; +import androidx.viewpager2.widget.ViewPager2; + +import android.annotation.SuppressLint; +import android.os.Bundle; +import android.view.MenuItem; + +import com.google.android.material.bottomnavigation.BottomNavigationView; +import com.google.android.material.navigation.NavigationBarView; + +public class MainActivity extends AppCompatActivity { + + ViewPager2 viewPager2; + ViewPagerAdapter viewPagerAdapter; + BottomNavigationView bottomNavigationView; + + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_main); + + bottomNavigationView = findViewById(R.id.bottom_nav); + viewPager2 = findViewById(R.id.viewPager); + viewPagerAdapter = new ViewPagerAdapter(this); + viewPager2.setAdapter(viewPagerAdapter); + bottomNavigationView.setOnItemSelectedListener(new NavigationBarView.OnItemSelectedListener() { + @SuppressLint("NonConstantResourceId") + @Override + public boolean onNavigationItemSelected(@NonNull MenuItem item) { + int id = item.getItemId(); + switch (id) { + case R.id.activity_home: + viewPager2.setCurrentItem(0); + break; + case R.id.activity_search: + viewPager2.setCurrentItem(1); + break; + case R.id.activity_basket: + viewPager2.setCurrentItem(2); + break; + case R.id.activity_favorite: + viewPager2.setCurrentItem(3); + break; + case R.id.activity_profile: + viewPager2.setCurrentItem(4); + break; + } + return false; + } + }); + + viewPager2.registerOnPageChangeCallback(new ViewPager2.OnPageChangeCallback() { + @Override + public void onPageSelected(int position) { + switch (position){ + case 0: + bottomNavigationView.getMenu().findItem(R.id.activity_home).setChecked(true); + break; + case 1: + bottomNavigationView.getMenu().findItem(R.id.activity_search).setChecked(true); + break; + case 2: + bottomNavigationView.getMenu().findItem(R.id.activity_basket).setChecked(true); + break; + case 3: + bottomNavigationView.getMenu().findItem(R.id.activity_favorite).setChecked(true); + break; + case 4: + bottomNavigationView.getMenu().findItem(R.id.activity_profile).setChecked(true); + break; + } + super.onPageSelected(position); + } + }); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/capstone/foodify/SignInActivity.java b/app/src/main/java/com/capstone/foodify/SignInActivity.java new file mode 100644 index 0000000..bb87f2f --- /dev/null +++ b/app/src/main/java/com/capstone/foodify/SignInActivity.java @@ -0,0 +1,148 @@ +package com.capstone.foodify; + +import androidx.appcompat.app.AppCompatActivity; + +import android.app.DatePickerDialog; +import android.content.Context; +import android.graphics.Typeface; +import android.os.Bundle; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ArrayAdapter; +import android.widget.DatePicker; +import android.widget.EditText; +import android.widget.Spinner; +import android.widget.TextView; + +import com.google.android.material.textfield.TextInputLayout; + +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Calendar; +import java.util.List; +import java.util.Locale; + +public class SignInActivity extends AppCompatActivity { + + TextInputLayout textInput_email, textInput_password, textInput_phone, + textInput_address, textInput_repeatPassword, textInput_firstName, textInput_lastName, textInput_birthDay; + final Calendar myCalendar= Calendar.getInstance(); + EditText editText, edt_birthday; + + Spinner wardSpinner, districtSpinner; + + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_sign_in); + + setFontUI(); + + //Calendar date of birth + editText=(EditText) findViewById(R.id.edt_birthDay); + DatePickerDialog.OnDateSetListener date = new DatePickerDialog.OnDateSetListener() { + @Override + public void onDateSet(DatePicker view, int year, int month, int day) { + myCalendar.set(Calendar.YEAR, year); + myCalendar.set(Calendar.MONTH,month); + myCalendar.set(Calendar.DAY_OF_MONTH,day); + updateLabel(); + } + }; + editText.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + new DatePickerDialog(SignInActivity.this,date,myCalendar.get(Calendar.YEAR),myCalendar.get(Calendar.MONTH),myCalendar.get(Calendar.DAY_OF_MONTH)).show(); + } + }); + + wardSpinner = (Spinner) findViewById(R.id.ward); + districtSpinner = (Spinner) findViewById(R.id.district); + + ArrayList ward = new ArrayList(); + ArrayList district = new ArrayList(); + + ward.add("---Phường"); + ward.add("Hoà Hiệp Bắc"); + ward.add("Hòa Khánh Bắc"); + ward.add("Hòa Minh"); + ward.add("Hòa Hiệp Nam"); + ward.add("Hòa Khánh Nam"); + + district.add("---Quận"); + district.add("Liên Chiểu"); + district.add("Ngũ Hành Sơn"); + + MySpinnerAdapter adapterWard = new MySpinnerAdapter(getApplicationContext(), android.R.layout.simple_spinner_item, ward); + MySpinnerAdapter adapterDistrict = new MySpinnerAdapter(getApplicationContext(), android.R.layout.simple_spinner_item, district); + wardSpinner.setAdapter(adapterWard); // this will set list of values to spinner + districtSpinner.setAdapter(adapterDistrict); // this will set list of values to spinner + + wardSpinner.setSelection(ward.indexOf("---Phường"));//set selected value in spinner + districtSpinner.setSelection(district.indexOf("---Quận")); + } + + private static class MySpinnerAdapter extends ArrayAdapter { + // Initialise custom font, for example: + Typeface font = Typeface.createFromAsset(getContext().getAssets(), + "font/bebas.ttf"); + + // (In reality I used a manager which caches the Typeface objects) + // Typeface font = FontManager.getInstance().getFont(getContext(), BLAMBOT); + + private MySpinnerAdapter(Context context, int resource, List items) { + super(context, resource, items); + } + + // Affects default (closed) state of the spinner + @Override + public View getView(int position, View convertView, ViewGroup parent) { + TextView view = (TextView) super.getView(position, convertView, parent); + view.setTypeface(font); + return view; + } + + // Affects opened state of the spinner + @Override + public View getDropDownView(int position, View convertView, ViewGroup parent) { + TextView view = (TextView) super.getDropDownView(position, convertView, parent); + view.setTypeface(font); + return view; + } + } + + private void updateLabel(){ + String myFormat="MM/dd/yy"; + SimpleDateFormat dateFormat=new SimpleDateFormat(myFormat, Locale.US); + editText.setText(dateFormat.format(myCalendar.getTime())); + } + + private void setFontUI() { + Typeface bebas= Typeface.createFromAsset(getAssets(), "font/bebas.ttf"); + + //Find view ID + textInput_email= (TextInputLayout) findViewById(R.id.textInput_email); + textInput_password = (TextInputLayout) findViewById(R.id.textInput_password); + textInput_phone = (TextInputLayout) findViewById(R.id.textInput_phone); + textInput_address = (TextInputLayout) findViewById(R.id.textInput_address); + textInput_repeatPassword = (TextInputLayout) findViewById(R.id.textInput_confirmPassword); + textInput_firstName = (TextInputLayout) findViewById(R.id.textInput_firstName); + textInput_lastName = (TextInputLayout) findViewById(R.id.textInput_lastName); + textInput_birthDay = (TextInputLayout) findViewById(R.id.textInput_birthDay); + + edt_birthday = (EditText) findViewById(R.id.edt_birthDay); + + //Set Type face + textInput_email.setTypeface(bebas); + textInput_password.setTypeface(bebas); + textInput_phone.setTypeface(bebas); + textInput_address.setTypeface(bebas); + textInput_repeatPassword.setTypeface(bebas); + textInput_firstName.setTypeface(bebas); + textInput_lastName.setTypeface(bebas); + textInput_birthDay.setTypeface(bebas); + + edt_birthday.setTypeface(bebas); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/capstone/foodify/SplashScreenActivity.java b/app/src/main/java/com/capstone/foodify/SplashScreenActivity.java new file mode 100644 index 0000000..0a1fb6a --- /dev/null +++ b/app/src/main/java/com/capstone/foodify/SplashScreenActivity.java @@ -0,0 +1,25 @@ +package com.capstone.foodify; + +import androidx.appcompat.app.AppCompatActivity; +import androidx.appcompat.app.AppCompatDelegate; + +import android.content.Intent; +import android.os.Bundle; +import android.os.Handler; + +public class SplashScreenActivity extends AppCompatActivity { + + @Override + protected void onCreate(Bundle savedInstanceState) { + AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO); + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_splash_screen); + new Handler().postDelayed(new Runnable() { + @Override + public void run() { + startActivity(new Intent(SplashScreenActivity.this, MainActivity.class)); + finish(); + } + }, 3000); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/capstone/foodify/ViewPagerAdapter.java b/app/src/main/java/com/capstone/foodify/ViewPagerAdapter.java new file mode 100644 index 0000000..9ae3f76 --- /dev/null +++ b/app/src/main/java/com/capstone/foodify/ViewPagerAdapter.java @@ -0,0 +1,36 @@ +package com.capstone.foodify; + +import androidx.annotation.NonNull; +import androidx.fragment.app.Fragment; +import androidx.fragment.app.FragmentActivity; +import androidx.viewpager2.adapter.FragmentStateAdapter; + +import com.capstone.foodify.Fragment.BasketFragment; +import com.capstone.foodify.Fragment.FavouriteFragment; +import com.capstone.foodify.Fragment.HomeFragment; +import com.capstone.foodify.Fragment.ProfileFragment; +import com.capstone.foodify.Fragment.SearchFragment; + +public class ViewPagerAdapter extends FragmentStateAdapter { + + public ViewPagerAdapter(@NonNull FragmentActivity fragmentActivity) { + super(fragmentActivity); + } + + @NonNull + @Override + public Fragment createFragment(int position) { + switch(position) { + case 1: return new SearchFragment(); + case 2: return new BasketFragment(); + case 3: return new FavouriteFragment(); + case 4: return new ProfileFragment(); + default: return new HomeFragment(); + } + } + + @Override + public int getItemCount() { + return 5; + } +} diff --git a/app/src/main/res/drawable-v24/ic_launcher_foreground.xml b/app/src/main/res/drawable-v24/ic_launcher_foreground.xml new file mode 100644 index 0000000..2b068d1 --- /dev/null +++ b/app/src/main/res/drawable-v24/ic_launcher_foreground.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/baseline_abc_24.xml b/app/src/main/res/drawable/baseline_abc_24.xml new file mode 100644 index 0000000..c73f146 --- /dev/null +++ b/app/src/main/res/drawable/baseline_abc_24.xml @@ -0,0 +1,5 @@ + + + diff --git a/app/src/main/res/drawable/baseline_calendar_month_24.xml b/app/src/main/res/drawable/baseline_calendar_month_24.xml new file mode 100644 index 0000000..b89360f --- /dev/null +++ b/app/src/main/res/drawable/baseline_calendar_month_24.xml @@ -0,0 +1,5 @@ + + + diff --git a/app/src/main/res/drawable/baseline_email_24.xml b/app/src/main/res/drawable/baseline_email_24.xml new file mode 100644 index 0000000..f0abc2d --- /dev/null +++ b/app/src/main/res/drawable/baseline_email_24.xml @@ -0,0 +1,5 @@ + + + diff --git a/app/src/main/res/drawable/baseline_home_24.xml b/app/src/main/res/drawable/baseline_home_24.xml new file mode 100644 index 0000000..5a870f5 --- /dev/null +++ b/app/src/main/res/drawable/baseline_home_24.xml @@ -0,0 +1,5 @@ + + + diff --git a/app/src/main/res/drawable/baseline_phone_24.xml b/app/src/main/res/drawable/baseline_phone_24.xml new file mode 100644 index 0000000..95c5f8a --- /dev/null +++ b/app/src/main/res/drawable/baseline_phone_24.xml @@ -0,0 +1,5 @@ + + + diff --git a/app/src/main/res/drawable/baseline_vpn_key_24.xml b/app/src/main/res/drawable/baseline_vpn_key_24.xml new file mode 100644 index 0000000..1339fb3 --- /dev/null +++ b/app/src/main/res/drawable/baseline_vpn_key_24.xml @@ -0,0 +1,5 @@ + + + diff --git a/app/src/main/res/drawable/ic_basket.xml b/app/src/main/res/drawable/ic_basket.xml new file mode 100644 index 0000000..a1dc16f --- /dev/null +++ b/app/src/main/res/drawable/ic_basket.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_favourite.xml b/app/src/main/res/drawable/ic_favourite.xml new file mode 100644 index 0000000..15cee2c --- /dev/null +++ b/app/src/main/res/drawable/ic_favourite.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_home.xml b/app/src/main/res/drawable/ic_home.xml new file mode 100644 index 0000000..ffdc2dd --- /dev/null +++ b/app/src/main/res/drawable/ic_home.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_launcher_background.xml b/app/src/main/res/drawable/ic_launcher_background.xml new file mode 100644 index 0000000..07d5da9 --- /dev/null +++ b/app/src/main/res/drawable/ic_launcher_background.xml @@ -0,0 +1,170 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/drawable/ic_launcher_foreground.xml b/app/src/main/res/drawable/ic_launcher_foreground.xml new file mode 100644 index 0000000..2b068d1 --- /dev/null +++ b/app/src/main/res/drawable/ic_launcher_foreground.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_profile.xml b/app/src/main/res/drawable/ic_profile.xml new file mode 100644 index 0000000..4e34a8c --- /dev/null +++ b/app/src/main/res/drawable/ic_profile.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_search.xml b/app/src/main/res/drawable/ic_search.xml new file mode 100644 index 0000000..8d79584 --- /dev/null +++ b/app/src/main/res/drawable/ic_search.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/logo.png b/app/src/main/res/drawable/logo.png new file mode 100644 index 0000000..9d07da9 Binary files /dev/null and b/app/src/main/res/drawable/logo.png differ diff --git a/app/src/main/res/font/bebas.ttf b/app/src/main/res/font/bebas.ttf new file mode 100644 index 0000000..ead2c4d Binary files /dev/null and b/app/src/main/res/font/bebas.ttf differ diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml new file mode 100644 index 0000000..48a492f --- /dev/null +++ b/app/src/main/res/layout/activity_main.xml @@ -0,0 +1,24 @@ + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_sign_in.xml b/app/src/main/res/layout/activity_sign_in.xml new file mode 100644 index 0000000..6b9cc29 --- /dev/null +++ b/app/src/main/res/layout/activity_sign_in.xml @@ -0,0 +1,289 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_splash_screen.xml b/app/src/main/res/layout/activity_splash_screen.xml new file mode 100644 index 0000000..b045a4a --- /dev/null +++ b/app/src/main/res/layout/activity_splash_screen.xml @@ -0,0 +1,21 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_basket.xml b/app/src/main/res/layout/fragment_basket.xml new file mode 100644 index 0000000..e33c406 --- /dev/null +++ b/app/src/main/res/layout/fragment_basket.xml @@ -0,0 +1,14 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_favourite.xml b/app/src/main/res/layout/fragment_favourite.xml new file mode 100644 index 0000000..42e144d --- /dev/null +++ b/app/src/main/res/layout/fragment_favourite.xml @@ -0,0 +1,14 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_home.xml b/app/src/main/res/layout/fragment_home.xml new file mode 100644 index 0000000..6b2dc4f --- /dev/null +++ b/app/src/main/res/layout/fragment_home.xml @@ -0,0 +1,14 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_profile.xml b/app/src/main/res/layout/fragment_profile.xml new file mode 100644 index 0000000..48069e0 --- /dev/null +++ b/app/src/main/res/layout/fragment_profile.xml @@ -0,0 +1,21 @@ + + + + + +