diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml new file mode 100644 index 0000000000000000000000000000000000000000..7643783a82f60b3b876fe58a9314fb50520df486 --- /dev/null +++ b/.idea/codeStyles/Project.xml @@ -0,0 +1,123 @@ +<component name="ProjectCodeStyleConfiguration"> + <code_scheme name="Project" version="173"> + <JetCodeStyleSettings> + <option name="CODE_STYLE_DEFAULTS" value="KOTLIN_OFFICIAL" /> + </JetCodeStyleSettings> + <codeStyleSettings language="XML"> + <option name="FORCE_REARRANGE_MODE" value="1" /> + <indentOptions> + <option name="CONTINUATION_INDENT_SIZE" value="4" /> + </indentOptions> + <arrangement> + <rules> + <section> + <rule> + <match> + <AND> + <NAME>xmlns:android</NAME> + <XML_ATTRIBUTE /> + <XML_NAMESPACE>^$</XML_NAMESPACE> + </AND> + </match> + </rule> + </section> + <section> + <rule> + <match> + <AND> + <NAME>xmlns:.*</NAME> + <XML_ATTRIBUTE /> + <XML_NAMESPACE>^$</XML_NAMESPACE> + </AND> + </match> + <order>BY_NAME</order> + </rule> + </section> + <section> + <rule> + <match> + <AND> + <NAME>.*:id</NAME> + <XML_ATTRIBUTE /> + <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE> + </AND> + </match> + </rule> + </section> + <section> + <rule> + <match> + <AND> + <NAME>.*:name</NAME> + <XML_ATTRIBUTE /> + <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE> + </AND> + </match> + </rule> + </section> + <section> + <rule> + <match> + <AND> + <NAME>name</NAME> + <XML_ATTRIBUTE /> + <XML_NAMESPACE>^$</XML_NAMESPACE> + </AND> + </match> + </rule> + </section> + <section> + <rule> + <match> + <AND> + <NAME>style</NAME> + <XML_ATTRIBUTE /> + <XML_NAMESPACE>^$</XML_NAMESPACE> + </AND> + </match> + </rule> + </section> + <section> + <rule> + <match> + <AND> + <NAME>.*</NAME> + <XML_ATTRIBUTE /> + <XML_NAMESPACE>^$</XML_NAMESPACE> + </AND> + </match> + <order>BY_NAME</order> + </rule> + </section> + <section> + <rule> + <match> + <AND> + <NAME>.*</NAME> + <XML_ATTRIBUTE /> + <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE> + </AND> + </match> + <order>ANDROID_ATTRIBUTE_ORDER</order> + </rule> + </section> + <section> + <rule> + <match> + <AND> + <NAME>.*</NAME> + <XML_ATTRIBUTE /> + <XML_NAMESPACE>.*</XML_NAMESPACE> + </AND> + </match> + <order>BY_NAME</order> + </rule> + </section> + </rules> + </arrangement> + </codeStyleSettings> + <codeStyleSettings language="kotlin"> + <option name="CODE_STYLE_DEFAULTS" value="KOTLIN_OFFICIAL" /> + </codeStyleSettings> + </code_scheme> +</component> \ No newline at end of file diff --git a/.idea/codeStyles/codeStyleConfig.xml b/.idea/codeStyles/codeStyleConfig.xml new file mode 100644 index 0000000000000000000000000000000000000000..79ee123c2b23e069e35ed634d687e17f731cc702 --- /dev/null +++ b/.idea/codeStyles/codeStyleConfig.xml @@ -0,0 +1,5 @@ +<component name="ProjectCodeStyleConfiguration"> + <state> + <option name="USE_PER_PROJECT_SETTINGS" value="true" /> + </state> +</component> \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index 0ffcb808af0db0c49ad7c09999efa36f1bd9c0e8..aca2867e904465201ab241ccade1de022746b512 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -7,12 +7,13 @@ <entry key="..\:/Users/csehv/AndroidStudioProjects/Kikerdezo/app/src/main/res/drawable-v24/round_menu_20.xml" value="0.32685185185185184" /> <entry key="..\:/Users/csehv/AndroidStudioProjects/Kikerdezo/app/src/main/res/drawable-v24/round_menu_24.xml" value="0.32685185185185184" /> <entry key="..\:/Users/csehv/AndroidStudioProjects/Kikerdezo/app/src/main/res/drawable/ic_launcher_background.xml" value="0.2765625" /> - <entry key="..\:/Users/csehv/AndroidStudioProjects/Kikerdezo/app/src/main/res/layout/activity_main.xml" value="0.3484375" /> + <entry key="..\:/Users/csehv/AndroidStudioProjects/Kikerdezo/app/src/main/res/layout/activity_main.xml" value="0.19899103139013452" /> <entry key="..\:/Users/csehv/AndroidStudioProjects/Kikerdezo/app/src/main/res/layout/activity_question.xml" value="0.33" /> <entry key="..\:/Users/csehv/AndroidStudioProjects/Kikerdezo/app/src/main/res/layout/activity_question_list.xml" value="0.33" /> <entry key="..\:/Users/csehv/AndroidStudioProjects/Kikerdezo/app/src/main/res/layout/activity_user_name.xml" value="0.25" /> <entry key="..\:/Users/csehv/AndroidStudioProjects/Kikerdezo/app/src/main/res/layout/header_navigation_drawer.xml" value="0.20260416666666667" /> <entry key="..\:/Users/csehv/AndroidStudioProjects/Kikerdezo/app/src/main/res/layout/question_item.xml" value="0.33" /> + <entry key="..\:/Users/csehv/AndroidStudioProjects/Kikerdezo/app/src/main/res/layout/result_item.xml" value="0.25" /> <entry key="..\:/Users/csehv/AndroidStudioProjects/Kikerdezo/app/src/main/res/menu/navigation_drawer.xml" value="0.5" /> <entry key="..\:/Users/csehv/AndroidStudioProjects/Kikerdezo/app/src/main/res/menu/top_app_bar.xml" value="0.2814814814814815" /> </map> diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 67cb1686d1383dd253cb5975160450a48c95d5eb..b1124bd5ef20e0ba4cabee73d5761e15311ed8be 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -16,10 +16,12 @@ android:theme="@style/Theme.Kikerdezo" android:usesCleartextTraffic="true" tools:targetApi="m"> + <activity + android:name=".ResultsActivity" + android:exported="false" /> <activity android:name=".UserName" - android:exported="false" > - </activity> + android:exported="false"></activity> <activity android:name=".QuestionListActivity" android:exported="false" @@ -30,7 +32,8 @@ android:exported="true"> <intent-filter> <action android:name="android.intent.action.MAIN" /> - <category android:name="android.intent.category.LAUNCHER"/> + + <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> diff --git a/app/src/main/java/hu/bme/kszk/kikerdezo/MainActivity.kt b/app/src/main/java/hu/bme/kszk/kikerdezo/MainActivity.kt index 24ad3d1cb31b2e2554b22c70e78b5626cbea5be7..058b0deb4ac6402fcfeca36d6d8b6f464ca42d79 100644 --- a/app/src/main/java/hu/bme/kszk/kikerdezo/MainActivity.kt +++ b/app/src/main/java/hu/bme/kszk/kikerdezo/MainActivity.kt @@ -1,6 +1,5 @@ package hu.bme.kszk.kikerdezo -import android.content.ClipData import android.content.Intent import androidx.appcompat.app.AppCompatActivity import android.os.Bundle @@ -8,7 +7,6 @@ import android.preference.PreferenceManager import android.provider.AlarmClock.EXTRA_MESSAGE import android.util.Log import android.widget.Button -import android.widget.LinearLayout import android.widget.TextView import android.widget.Toast import androidx.core.view.GravityCompat @@ -189,10 +187,13 @@ class MainActivity : AppCompatActivity() { navigationView.setNavigationItemSelectedListener { menuItem -> val id = menuItem.itemId if (id == R.id.eredmenyek) { - //startActivity(Intent(this, )) + startActivity(Intent(this, ResultsActivity::class.java)) } else if (id == R.id.nev_megadas) { startActivity(Intent(this, UserName::class.java)) } + else if (id == R.id.kikerdezo) { + //semmi + } drawerLayout.closeDrawer(GravityCompat.START) true } @@ -244,11 +245,11 @@ class MainActivity : AppCompatActivity() { private fun loadToDatabase(recivedQuestionData: QuestionData?) { thread{ - AppDatabase.getInstance(this).clearAllTables() + AppDatabase.getInstanceQuestion(this).clearAllTables() if (recivedQuestionData != null) { if(recivedQuestionData.data != null) { for (question in recivedQuestionData.data!!) - AppDatabase.getInstance(this).questionDao().insertQuestion( + AppDatabase.getInstanceQuestion(this).questionDao().insertQuestion( question ) Log.d("DATABASE_LOADED", "database loaded to sqlite") diff --git a/app/src/main/java/hu/bme/kszk/kikerdezo/QuestionListActivity.kt b/app/src/main/java/hu/bme/kszk/kikerdezo/QuestionListActivity.kt index 80b9809cba91e2d2929d3e799edf12c90b93751b..82db4701f0b51a0586bc9c6d6011525e97223d92 100644 --- a/app/src/main/java/hu/bme/kszk/kikerdezo/QuestionListActivity.kt +++ b/app/src/main/java/hu/bme/kszk/kikerdezo/QuestionListActivity.kt @@ -34,7 +34,7 @@ class QuestionListActivity : AppCompatActivity() { questionAdapter = Adapter(this) val rvMain: RecyclerView = findViewById(R.id.rvMain) rvMain.adapter = questionAdapter - AppDatabase.getInstance(this).questionDao().getLabQuestion(b).observe(this, {questions -> + AppDatabase.getInstanceQuestion(this).questionDao().getLabQuestion(b).observe(this, { questions -> questionAdapter.submitList(questions) }) } diff --git a/app/src/main/java/hu/bme/kszk/kikerdezo/ResultsActivity.kt b/app/src/main/java/hu/bme/kszk/kikerdezo/ResultsActivity.kt new file mode 100644 index 0000000000000000000000000000000000000000..1b460271577f3f28e295e67cfef7c6d446afb0c5 --- /dev/null +++ b/app/src/main/java/hu/bme/kszk/kikerdezo/ResultsActivity.kt @@ -0,0 +1,71 @@ +package hu.bme.kszk.kikerdezo + +import android.content.Intent +import androidx.appcompat.app.AppCompatActivity +import android.os.Bundle +import android.preference.PreferenceManager +import android.util.Log +import android.widget.TextView +import androidx.core.view.GravityCompat +import androidx.drawerlayout.widget.DrawerLayout +import androidx.recyclerview.widget.RecyclerView +import com.google.android.material.appbar.MaterialToolbar +import com.google.android.material.navigation.NavigationView +import hu.bme.kszk.kikerdezo.adapter.ResultAdapter +import hu.bme.kszk.kikerdezo.database.AppDatabase + +class ResultsActivity : AppCompatActivity() { + + private lateinit var resAdapter : ResultAdapter + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + setContentView(R.layout.activity_results) + + setUserName() + + val topAppBar = findViewById<MaterialToolbar>(R.id.topAppBar) + val drawerLayout = findViewById<DrawerLayout>(R.id.drawer_layout) + val navigationView = findViewById<NavigationView>(R.id.navigation_view) + + topAppBar.setNavigationOnClickListener { + drawerLayout.openDrawer(navigationView) + } + + navigationView.setNavigationItemSelectedListener { menuItem -> + val id = menuItem.itemId + if (id == R.id.eredmenyek) { + //Semmi, itt vagy pls + } else if (id == R.id.nev_megadas) { + startActivity(Intent(this, UserName::class.java)) + } else if (id == R.id.kikerdezo) { + finish() //csak onnan lehet elinditani + } + drawerLayout.closeDrawer(GravityCompat.START) + true + } + + initRecycleView() + } + + private fun initRecycleView() { + resAdapter = ResultAdapter(this) + val rvResults: RecyclerView = findViewById(R.id.rvResults) + rvResults.adapter = resAdapter + AppDatabase.getInstanceResult(this).resultsDao().getResults().observe(this, { results -> + resAdapter.submitList(results) + }) + } + + private fun setUserName() { + val navigationView = findViewById<NavigationView>(R.id.navigation_view) + val headerView = navigationView.getHeaderView(0) + val name = headerView.findViewById<TextView>(R.id.playerName) + + val sp = PreferenceManager.getDefaultSharedPreferences(this) + + + sp.getString("USERNAME", "PlayerOne")?.let { Log.d("USERNAME", it) } + name.text?.let { name.text = sp.getString("USERNAME", "PlayerOne").toString() } + } +} \ No newline at end of file diff --git a/app/src/main/java/hu/bme/kszk/kikerdezo/adapter/adapter.kt b/app/src/main/java/hu/bme/kszk/kikerdezo/adapter/QuestionAdapter.kt similarity index 100% rename from app/src/main/java/hu/bme/kszk/kikerdezo/adapter/adapter.kt rename to app/src/main/java/hu/bme/kszk/kikerdezo/adapter/QuestionAdapter.kt diff --git a/app/src/main/java/hu/bme/kszk/kikerdezo/adapter/ResultAdapter.kt b/app/src/main/java/hu/bme/kszk/kikerdezo/adapter/ResultAdapter.kt new file mode 100644 index 0000000000000000000000000000000000000000..b9e6a7d17bf4de9a3e3a778a7ad06ca61b9632cc --- /dev/null +++ b/app/src/main/java/hu/bme/kszk/kikerdezo/adapter/ResultAdapter.kt @@ -0,0 +1,55 @@ +package hu.bme.kszk.kikerdezo.adapter + +import android.content.Context +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import android.widget.TextView +import androidx.recyclerview.widget.DiffUtil +import androidx.recyclerview.widget.ListAdapter +import androidx.recyclerview.widget.RecyclerView +import hu.bme.kszk.kikerdezo.R +import hu.bme.kszk.kikerdezo.model.Result + +class ResultAdapter(val context: Context) : + ListAdapter<Result, ResultAdapter.ResultViewHolder>(ResultDiffCallback){ + + class ResultViewHolder(itemView: View): + RecyclerView.ViewHolder(itemView) { + private val score: TextView = itemView.findViewById(R.id.score) + private val name: TextView = itemView.findViewById(R.id.name) + private val date: TextView = itemView.findViewById(R.id.date) + init{ + + } + fun bind(result: Result){ + score.text = result.score.toString() + name.text = result.uname + date.text = result.date.toString() + } + } + override fun onCreateViewHolder(parent: ViewGroup, viewType: Int) : ResultAdapter.ResultViewHolder { + // Create a new view, which defines the UI of the list item + val view = LayoutInflater.from(parent.context) + .inflate(R.layout.result_item, parent, false) + + return ResultAdapter.ResultViewHolder(view) + } + override fun onBindViewHolder(holder: ResultAdapter.ResultViewHolder, position: Int) { + val result = getItem(position) + holder.bind(result) + } + + + + } + +object ResultDiffCallback : DiffUtil.ItemCallback<Result>() { + override fun areItemsTheSame(oldItem: Result, newItem: Result): Boolean { + return oldItem == newItem + } + + override fun areContentsTheSame(oldItem: Result, newItem: Result): Boolean { + return oldItem.id == newItem.id + } +} \ No newline at end of file diff --git a/app/src/main/java/hu/bme/kszk/kikerdezo/database/AppDatabase.kt b/app/src/main/java/hu/bme/kszk/kikerdezo/database/AppDatabase.kt index c70a1c7c9f40e676e07cbf93002b85cbbe8fb859..4117c84eee002ae53436ed2bff2b5461a9816b9e 100644 --- a/app/src/main/java/hu/bme/kszk/kikerdezo/database/AppDatabase.kt +++ b/app/src/main/java/hu/bme/kszk/kikerdezo/database/AppDatabase.kt @@ -9,11 +9,12 @@ import hu.bme.kszk.kikerdezo.model.Question @Database(entities = [Question::class], version = 1) abstract class AppDatabase : RoomDatabase() { abstract fun questionDao(): QuestionDao + abstract fun resultsDao(): ResultDao companion object { private var INSTANCE: AppDatabase? = null - fun getInstance(context: Context): AppDatabase { + fun getInstanceQuestion(context: Context): AppDatabase { if (INSTANCE == null) { INSTANCE = Room.databaseBuilder(context.getApplicationContext(), AppDatabase::class.java, "question.db") @@ -22,6 +23,15 @@ abstract class AppDatabase : RoomDatabase() { } return INSTANCE!! } + fun getInstanceResult(context: Context): AppDatabase { + if (INSTANCE == null) { + INSTANCE = Room.databaseBuilder(context.getApplicationContext(), + AppDatabase::class.java, "result.db") + .fallbackToDestructiveMigration() + .build() + } + return INSTANCE!! + } fun destroyInstance() { INSTANCE = null diff --git a/app/src/main/java/hu/bme/kszk/kikerdezo/database/ResultDao.kt b/app/src/main/java/hu/bme/kszk/kikerdezo/database/ResultDao.kt new file mode 100644 index 0000000000000000000000000000000000000000..9b9b50b1c7861042f5ef63f69572f8edbdf5bfa5 --- /dev/null +++ b/app/src/main/java/hu/bme/kszk/kikerdezo/database/ResultDao.kt @@ -0,0 +1,16 @@ +package hu.bme.kszk.kikerdezo.database + +import androidx.lifecycle.LiveData +import androidx.room.Dao +import androidx.room.Insert +import androidx.room.Query +import hu.bme.kszk.kikerdezo.model.Result + +@Dao +interface ResultDao { + @Query("SELECT * FROM result ORDER BY score") + fun getResults(): LiveData<List<Result>> + + @Insert + fun insertResult(result: Result) : Long +} \ No newline at end of file diff --git a/app/src/main/java/hu/bme/kszk/kikerdezo/model/Result.kt b/app/src/main/java/hu/bme/kszk/kikerdezo/model/Result.kt new file mode 100644 index 0000000000000000000000000000000000000000..93802ef1678651453706ed6c2c377cfd53b02b1c --- /dev/null +++ b/app/src/main/java/hu/bme/kszk/kikerdezo/model/Result.kt @@ -0,0 +1,14 @@ +package hu.bme.kszk.kikerdezo.model + +import androidx.room.ColumnInfo +import androidx.room.Entity +import androidx.room.PrimaryKey +import java.util.* + +@Entity(tableName = "result") +data class Result( + @PrimaryKey(autoGenerate = true) var id: Int, + @ColumnInfo(name = "uname") var uname: String, + @ColumnInfo(name = "score") var score: Int, + @ColumnInfo(name = "date") var date: Date + ) diff --git a/app/src/main/res/drawable-hdpi/baseline_quiz_black_18.png b/app/src/main/res/drawable-hdpi/baseline_quiz_black_18.png new file mode 100644 index 0000000000000000000000000000000000000000..9402529d0a97d850711f6501bfe00ac11072dd28 Binary files /dev/null and b/app/src/main/res/drawable-hdpi/baseline_quiz_black_18.png differ diff --git a/app/src/main/res/drawable-hdpi/baseline_quiz_black_20.png b/app/src/main/res/drawable-hdpi/baseline_quiz_black_20.png new file mode 100644 index 0000000000000000000000000000000000000000..bca71099d7aa8782ed6fdd5f0beb1a2034c7d365 Binary files /dev/null and b/app/src/main/res/drawable-hdpi/baseline_quiz_black_20.png differ diff --git a/app/src/main/res/drawable-hdpi/baseline_quiz_black_24.png b/app/src/main/res/drawable-hdpi/baseline_quiz_black_24.png new file mode 100644 index 0000000000000000000000000000000000000000..922c180462fd25ddd7e78c6369f955a3f56beb0c Binary files /dev/null and b/app/src/main/res/drawable-hdpi/baseline_quiz_black_24.png differ diff --git a/app/src/main/res/drawable-hdpi/baseline_quiz_black_36.png b/app/src/main/res/drawable-hdpi/baseline_quiz_black_36.png new file mode 100644 index 0000000000000000000000000000000000000000..2d07f50209fe122d864fff077461938d84aa823d Binary files /dev/null and b/app/src/main/res/drawable-hdpi/baseline_quiz_black_36.png differ diff --git a/app/src/main/res/drawable-hdpi/baseline_quiz_black_48.png b/app/src/main/res/drawable-hdpi/baseline_quiz_black_48.png new file mode 100644 index 0000000000000000000000000000000000000000..00abd4c4093316c2204b8d988111e7173354794c Binary files /dev/null and b/app/src/main/res/drawable-hdpi/baseline_quiz_black_48.png differ diff --git a/app/src/main/res/drawable-mdpi/baseline_quiz_black_18.png b/app/src/main/res/drawable-mdpi/baseline_quiz_black_18.png new file mode 100644 index 0000000000000000000000000000000000000000..1e5c3b753849e2bf965b1412abbbb5eaa5a42b1a Binary files /dev/null and b/app/src/main/res/drawable-mdpi/baseline_quiz_black_18.png differ diff --git a/app/src/main/res/drawable-mdpi/baseline_quiz_black_20.png b/app/src/main/res/drawable-mdpi/baseline_quiz_black_20.png new file mode 100644 index 0000000000000000000000000000000000000000..72f5298d7490dace4d9922672b68ee23976a8048 Binary files /dev/null and b/app/src/main/res/drawable-mdpi/baseline_quiz_black_20.png differ diff --git a/app/src/main/res/drawable-mdpi/baseline_quiz_black_24.png b/app/src/main/res/drawable-mdpi/baseline_quiz_black_24.png new file mode 100644 index 0000000000000000000000000000000000000000..87c93928e0b4677879b36a1d1d1efc18dd887e38 Binary files /dev/null and b/app/src/main/res/drawable-mdpi/baseline_quiz_black_24.png differ diff --git a/app/src/main/res/drawable-mdpi/baseline_quiz_black_36.png b/app/src/main/res/drawable-mdpi/baseline_quiz_black_36.png new file mode 100644 index 0000000000000000000000000000000000000000..922c180462fd25ddd7e78c6369f955a3f56beb0c Binary files /dev/null and b/app/src/main/res/drawable-mdpi/baseline_quiz_black_36.png differ diff --git a/app/src/main/res/drawable-mdpi/baseline_quiz_black_48.png b/app/src/main/res/drawable-mdpi/baseline_quiz_black_48.png new file mode 100644 index 0000000000000000000000000000000000000000..2286ba7fff6b7822fed720f2427a930066eb89e1 Binary files /dev/null and b/app/src/main/res/drawable-mdpi/baseline_quiz_black_48.png differ diff --git a/app/src/main/res/drawable-xhdpi/baseline_quiz_black_18.png b/app/src/main/res/drawable-xhdpi/baseline_quiz_black_18.png new file mode 100644 index 0000000000000000000000000000000000000000..922c180462fd25ddd7e78c6369f955a3f56beb0c Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/baseline_quiz_black_18.png differ diff --git a/app/src/main/res/drawable-xhdpi/baseline_quiz_black_20.png b/app/src/main/res/drawable-xhdpi/baseline_quiz_black_20.png new file mode 100644 index 0000000000000000000000000000000000000000..bb660bfe87c7b0125ab2e01b3a271b3630a4284d Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/baseline_quiz_black_20.png differ diff --git a/app/src/main/res/drawable-xhdpi/baseline_quiz_black_24.png b/app/src/main/res/drawable-xhdpi/baseline_quiz_black_24.png new file mode 100644 index 0000000000000000000000000000000000000000..2286ba7fff6b7822fed720f2427a930066eb89e1 Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/baseline_quiz_black_24.png differ diff --git a/app/src/main/res/drawable-xhdpi/baseline_quiz_black_36.png b/app/src/main/res/drawable-xhdpi/baseline_quiz_black_36.png new file mode 100644 index 0000000000000000000000000000000000000000..00abd4c4093316c2204b8d988111e7173354794c Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/baseline_quiz_black_36.png differ diff --git a/app/src/main/res/drawable-xhdpi/baseline_quiz_black_48.png b/app/src/main/res/drawable-xhdpi/baseline_quiz_black_48.png new file mode 100644 index 0000000000000000000000000000000000000000..49db5d1c16de2bb80cae1a2a475a72d0adb6314a Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/baseline_quiz_black_48.png differ diff --git a/app/src/main/res/drawable-xxhdpi/baseline_quiz_black_18.png b/app/src/main/res/drawable-xxhdpi/baseline_quiz_black_18.png new file mode 100644 index 0000000000000000000000000000000000000000..2d07f50209fe122d864fff077461938d84aa823d Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/baseline_quiz_black_18.png differ diff --git a/app/src/main/res/drawable-xxhdpi/baseline_quiz_black_20.png b/app/src/main/res/drawable-xxhdpi/baseline_quiz_black_20.png new file mode 100644 index 0000000000000000000000000000000000000000..2144041bdfead645883396d06a4a0d687f95c579 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/baseline_quiz_black_20.png differ diff --git a/app/src/main/res/drawable-xxhdpi/baseline_quiz_black_24.png b/app/src/main/res/drawable-xxhdpi/baseline_quiz_black_24.png new file mode 100644 index 0000000000000000000000000000000000000000..00abd4c4093316c2204b8d988111e7173354794c Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/baseline_quiz_black_24.png differ diff --git a/app/src/main/res/drawable-xxhdpi/baseline_quiz_black_36.png b/app/src/main/res/drawable-xxhdpi/baseline_quiz_black_36.png new file mode 100644 index 0000000000000000000000000000000000000000..c69041101010192f7832caad54e6aa7084bd50e1 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/baseline_quiz_black_36.png differ diff --git a/app/src/main/res/drawable-xxhdpi/baseline_quiz_black_48.png b/app/src/main/res/drawable-xxhdpi/baseline_quiz_black_48.png new file mode 100644 index 0000000000000000000000000000000000000000..f851eeb073552ac0c838a50691963bea13867b4c Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/baseline_quiz_black_48.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/baseline_quiz_black_18.png b/app/src/main/res/drawable-xxxhdpi/baseline_quiz_black_18.png new file mode 100644 index 0000000000000000000000000000000000000000..00abd4c4093316c2204b8d988111e7173354794c Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/baseline_quiz_black_18.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/baseline_quiz_black_20.png b/app/src/main/res/drawable-xxxhdpi/baseline_quiz_black_20.png new file mode 100644 index 0000000000000000000000000000000000000000..0afbe70e6d0676584e753daa09d3ae01e959cae3 Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/baseline_quiz_black_20.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/baseline_quiz_black_24.png b/app/src/main/res/drawable-xxxhdpi/baseline_quiz_black_24.png new file mode 100644 index 0000000000000000000000000000000000000000..49db5d1c16de2bb80cae1a2a475a72d0adb6314a Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/baseline_quiz_black_24.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/baseline_quiz_black_36.png b/app/src/main/res/drawable-xxxhdpi/baseline_quiz_black_36.png new file mode 100644 index 0000000000000000000000000000000000000000..f851eeb073552ac0c838a50691963bea13867b4c Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/baseline_quiz_black_36.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/baseline_quiz_black_48.png b/app/src/main/res/drawable-xxxhdpi/baseline_quiz_black_48.png new file mode 100644 index 0000000000000000000000000000000000000000..828002bf25f04188ede07f5731393bddd91bca57 Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/baseline_quiz_black_48.png differ diff --git a/app/src/main/res/drawable/baseline_quiz_20.xml b/app/src/main/res/drawable/baseline_quiz_20.xml new file mode 100644 index 0000000000000000000000000000000000000000..adebe0c0b7358a16805755c6acf13e02819054e8 --- /dev/null +++ b/app/src/main/res/drawable/baseline_quiz_20.xml @@ -0,0 +1,13 @@ +<vector xmlns:android="http://schemas.android.com/apk/res/android" + android:width="20dp" + android:height="20dp" + android:viewportWidth="20" + android:viewportHeight="20" + android:tint="?attr/colorControlNormal"> + <path + android:fillColor="@android:color/white" + android:pathData="M3.5,5H2v11.5C2,17.33 2.67,18 3.5,18H15v-1.5H3.5V5z"/> + <path + android:fillColor="@android:color/white" + android:pathData="M16.5,2h-10C5.67,2 5,2.67 5,3.5v10C5,14.33 5.67,15 6.5,15h10c0.83,0 1.5,-0.67 1.5,-1.5v-10C18,2.67 17.33,2 16.5,2zM11.51,12.5c-0.47,0 -0.84,-0.37 -0.84,-0.84c0,-0.47 0.37,-0.83 0.84,-0.83c0.47,0 0.83,0.36 0.83,0.83C12.34,12.12 11.98,12.5 11.51,12.5zM13.51,7.57c-0.5,0.74 -0.99,0.97 -1.25,1.45c-0.1,0.19 -0.15,0.32 -0.15,0.94H10.9c0,-0.33 -0.05,-0.86 0.21,-1.32c0.33,-0.58 0.94,-0.93 1.31,-1.44c0.38,-0.54 0.17,-1.55 -0.91,-1.55c-0.71,0 -1.06,0.54 -1.2,0.98L9.21,6.16c0.3,-0.89 1.11,-1.66 2.28,-1.66c0.98,0 1.66,0.45 2.01,1.01C13.79,5.99 13.97,6.9 13.51,7.57z"/> +</vector> diff --git a/app/src/main/res/drawable/baseline_quiz_24.xml b/app/src/main/res/drawable/baseline_quiz_24.xml new file mode 100644 index 0000000000000000000000000000000000000000..3c4f2536beb455201926e8ca66cb95fef55ed37e --- /dev/null +++ b/app/src/main/res/drawable/baseline_quiz_24.xml @@ -0,0 +1,13 @@ +<vector xmlns:android="http://schemas.android.com/apk/res/android" + android:width="24dp" + android:height="24dp" + android:viewportWidth="24" + android:viewportHeight="24" + android:tint="?attr/colorControlNormal"> + <path + android:fillColor="@android:color/white" + android:pathData="M4,6H2v14c0,1.1 0.9,2 2,2h14v-2H4V6z"/> + <path + android:fillColor="@android:color/white" + android:pathData="M20,2H8C6.9,2 6,2.9 6,4v12c0,1.1 0.9,2 2,2h12c1.1,0 2,-0.9 2,-2V4C22,2.9 21.1,2 20,2zM14.01,15c-0.59,0 -1.05,-0.47 -1.05,-1.05c0,-0.59 0.47,-1.04 1.05,-1.04c0.59,0 1.04,0.45 1.04,1.04C15.04,14.53 14.6,15 14.01,15zM16.51,8.83c-0.63,0.93 -1.23,1.21 -1.56,1.81c-0.13,0.24 -0.18,0.4 -0.18,1.18h-1.52c0,-0.41 -0.06,-1.08 0.26,-1.65c0.41,-0.73 1.18,-1.16 1.63,-1.8c0.48,-0.68 0.21,-1.94 -1.14,-1.94c-0.88,0 -1.32,0.67 -1.5,1.23l-1.37,-0.57C11.51,5.96 12.52,5 13.99,5c1.23,0 2.08,0.56 2.51,1.26C16.87,6.87 17.08,7.99 16.51,8.83z"/> +</vector> diff --git a/app/src/main/res/layout/activity_results.xml b/app/src/main/res/layout/activity_results.xml new file mode 100644 index 0000000000000000000000000000000000000000..6e94650998b1811d6ccf6a69ebf042ea680f3da3 --- /dev/null +++ b/app/src/main/res/layout/activity_results.xml @@ -0,0 +1,82 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Use DrawerLayout as root container for activity --> +<androidx.drawerlayout.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto" + xmlns:tools="http://schemas.android.com/tools" + android:id="@+id/drawer_layout" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:fitsSystemWindows="true" + tools:openDrawer="start"> + + <androidx.coordinatorlayout.widget.CoordinatorLayout + android:layout_width="match_parent" + android:layout_height="match_parent" + android:fitsSystemWindows="true"> + + <com.google.android.material.appbar.AppBarLayout + android:id="@+id/appBarLayout" + style="@style/Widget.MaterialComponents.AppBarLayout.PrimarySurface" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:fitsSystemWindows="true"> + + </com.google.android.material.appbar.AppBarLayout> + + <androidx.appcompat.widget.Toolbar + android:id="@+id/toolbar" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:background="?attr/colorPrimary" + android:minHeight="?attr/actionBarSize" + android:theme="?attr/actionBarTheme" + app:layout_anchor="@+id/appBarLayout" + app:layout_anchorGravity="center" /> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="vertical"> + + <com.google.android.material.appbar.MaterialToolbar + android:id="@+id/topAppBar" + style="@style/Widget.MaterialComponents.Toolbar.PrimarySurface" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:background="@android:color/transparent" + android:elevation="0dp" + + app:navigationIcon="@drawable/round_menu_24" + app:title="@string/app_name" /> + + <!-- Screen content --> + <!-- Use app:layout_behavior="@string/appbar_scrolling_view_behavior" to fit below top app bar --> + + <LinearLayout + android:id="@+id/linearLayout" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:orientation="vertical"> + + <androidx.recyclerview.widget.RecyclerView + android:id="@+id/rvResults" + android:layout_width="match_parent" + android:layout_height="wrap_content" + app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"> + + </androidx.recyclerview.widget.RecyclerView> + </LinearLayout> + + </LinearLayout> + + </androidx.coordinatorlayout.widget.CoordinatorLayout> + + <com.google.android.material.navigation.NavigationView + android:id="@+id/navigation_view" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:layout_gravity="start" + app:menu="@menu/navigation_drawer" + app:headerLayout="@layout/header_navigation_drawer"/> + +</androidx.drawerlayout.widget.DrawerLayout> \ No newline at end of file diff --git a/app/src/main/res/layout/result_item.xml b/app/src/main/res/layout/result_item.xml new file mode 100644 index 0000000000000000000000000000000000000000..f79b35347d1a112b576e96ef044bdec27e2ca866 --- /dev/null +++ b/app/src/main/res/layout/result_item.xml @@ -0,0 +1,47 @@ +<?xml version="1.0" encoding="utf-8"?> +<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto" + xmlns:tools="http://schemas.android.com/tools" + android:layout_width="match_parent" + android:layout_height="match_parent"> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="horizontal"> + + <View + android:id="@+id/divider" + android:layout_width="match_parent" + android:layout_height="1dp" + android:layout_weight="1" + android:background="?android:attr/listDivider" /> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="200dp" + android:orientation="horizontal"> + + <TextView + android:id="@+id/score" + android:layout_width="50sp" + android:layout_height="150sp" + android:text="Score" /> + + <TextView + android:id="@+id/name" + android:layout_width="200sp" + android:layout_height="150sp" + android:text="name" /> + + <TextView + android:id="@+id/date" + android:layout_width="100sp" + android:layout_height="150sp" + android:layout_weight="1" + android:text="Date" /> + + </LinearLayout> + </LinearLayout> + +</androidx.constraintlayout.widget.ConstraintLayout> \ No newline at end of file diff --git a/app/src/main/res/menu/navigation_drawer.xml b/app/src/main/res/menu/navigation_drawer.xml index 0fe21e689bb15d3e59ae3de29f2868b18aa4c252..f9f833fab11a1a9fb374aace3fe560fb3b066254 100644 --- a/app/src/main/res/menu/navigation_drawer.xml +++ b/app/src/main/res/menu/navigation_drawer.xml @@ -1,5 +1,9 @@ <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> + <item + android:icon="@drawable/baseline_quiz_black_24" + android:id="@+id/kikerdezo" + android:title="@string/kikerdezo"/> <item android:icon="@drawable/round_emoji_events_24" android:id="@+id/eredmenyek" diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 3271d8c71acd299ed7c4227a785cd79ad4e7a7dc..6a01020638a20c0457287ccc61c86328b534676b 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -30,4 +30,5 @@ <string name="hello_second_fragment">Hello second fragment. Arg: %1$s</string> <string name="questiongoeshere">QuestionGoesHere</string> <string name="oke">Oke</string> + <string name="kikerdezo">Kikerdezo</string> </resources> \ No newline at end of file