From b0a05c50ae8d4f829afe7a016c8e3d2c7f507438 Mon Sep 17 00:00:00 2001 From: Strangedusk Date: Sat, 19 Feb 2022 18:17:15 +0100 Subject: [PATCH] Implement Searches --- .idea/deploymentTargetDropDown.xml | 17 -------- app/src/main/AndroidManifest.xml | 4 +- .../java/com/example/testes/MainActivity.kt | 43 ++++++++++++++++++- app/src/main/res/layout/activity_main.xml | 38 +++++++++++++++- app/src/main/res/values/strings.xml | 3 +- app/src/main/res/xml/searchable.xml | 8 ++++ 6 files changed, 91 insertions(+), 22 deletions(-) delete mode 100644 .idea/deploymentTargetDropDown.xml create mode 100644 app/src/main/res/xml/searchable.xml diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml deleted file mode 100644 index 83a89ff..0000000 --- a/.idea/deploymentTargetDropDown.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 3745cef..13f625a 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -17,9 +17,11 @@ android:exported="true"> - + + diff --git a/app/src/main/java/com/example/testes/MainActivity.kt b/app/src/main/java/com/example/testes/MainActivity.kt index aa498d9..829b898 100644 --- a/app/src/main/java/com/example/testes/MainActivity.kt +++ b/app/src/main/java/com/example/testes/MainActivity.kt @@ -1,9 +1,11 @@ package com.example.testes +import android.app.SearchManager import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.util.Log import android.widget.TextView +import androidx.appcompat.widget.SearchView import androidx.fragment.app.Fragment import com.example.testes.databinding.ActivityMainBinding import org.json.JSONArray @@ -12,7 +14,6 @@ import org.json.JSONObject class MainActivity : AppCompatActivity() { - private val url = "https://gelbooru.com/index.php?page=dapi&s=post&q=index&json=1&limit=18" lateinit var binding: ActivityMainBinding private fun imageListFromJson(json: JSONObject) { @@ -34,17 +35,55 @@ class MainActivity : AppCompatActivity() { super.onCreate(savedInstanceState) binding = ActivityMainBinding.inflate(layoutInflater) setContentView(binding.root) + val url = "https://gelbooru.com/index.php?page=dapi&s=post&q=index&json=1&limit=18" + search(assemblePostsUrl("izumi_konata")) + + binding.search.setOnQueryTextListener(object : + android.widget.SearchView.OnQueryTextListener { + override fun onQueryTextChange(newText: String): Boolean { + return false + } + + override fun onQueryTextSubmit(query: String): Boolean { + search(assemblePostsUrl(query)) + // task HERE + return false + } + } + ) + } + + private fun search(url: String) { Request.getRequest( this, url, ::imageListFromJson ) + Log.i("ocko", url) + } + + private fun assemblePostsUrl(query: String): String{ + return "https://gelbooru.com/index.php?page=dapi&s=post&q=index&json=1&limit=18&tags=$query" } private fun loadGrid(images: List) { val fragmentTransaction = supportFragmentManager.beginTransaction() - fragmentTransaction.add(R.id.imageGridRecV, ImageGridFragment(images)) + fragmentTransaction.replace(R.id.imageGridRecV, ImageGridFragment(images)) fragmentTransaction.commit() } + inner class SearchListener( + var callback: (String) -> Unit + ) : SearchView.OnQueryTextListener { + + override fun onQueryTextSubmit(query : String): Boolean { + callback(query) + return true + } + + override fun onQueryTextChange(query : String): Boolean { + //callback(query) + return true + } + } } diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index b72a608..63a0e9f 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -6,9 +6,45 @@ android:layout_height="match_parent" tools:context=".MainActivity"> + + + + + + + + + + + + + + android:layout_height="wrap_content" + app:layout_constraintTop_toBottomOf="@id/mainToolbar"/> + \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index da24744..31f73a8 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1,5 +1,6 @@ - Testes + Boorujelly Hello blank fragment + Search \ No newline at end of file diff --git a/app/src/main/res/xml/searchable.xml b/app/src/main/res/xml/searchable.xml new file mode 100644 index 0000000..bccadb1 --- /dev/null +++ b/app/src/main/res/xml/searchable.xml @@ -0,0 +1,8 @@ + + + + + \ No newline at end of file