From 0e647a95022d1d92453d8c8fc9adbe0c9991154f Mon Sep 17 00:00:00 2001 From: Azuma Kasumi Date: Wed, 5 Jul 2023 18:22:45 +0900 Subject: [PATCH 1/9] =?UTF-8?q?=E3=83=8F=E3=83=B3=E3=83=90=E3=83=BC?= =?UTF-8?q?=E3=82=AC=E3=83=BC=E3=83=A1=E3=83=8B=E3=83=A5=E3=83=BC=E3=81=AB?= =?UTF-8?q?=E3=82=B5=E3=83=BC=E3=83=90=E3=83=BC=E6=8E=A5=E7=B6=9A=E5=85=88?= =?UTF-8?q?=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/misc.xml | 23 ++++++++++ .idea/navEditor.xml | 22 +++++++++ .../jp/atled/agileworks/view/ui/DrawerMenu.kt | 9 +++- .../drawable/ic_drawer_server_switching.xml | 5 ++ .../main/res/layout/drawer_header_layout.xml | 46 +++++++++++++------ app/src/main/res/menu/drawer_menu.xml | 1 + app/src/main/res/values-en/strings.xml | 1 + app/src/main/res/values-ja/strings.xml | 1 + app/src/main/res/values-zh-rTW/strings.xml | 1 + app/src/main/res/values-zh/strings.xml | 1 + app/src/main/res/values/strings.xml | 1 + 11 files changed, 95 insertions(+), 16 deletions(-) create mode 100644 app/src/main/res/drawable/ic_drawer_server_switching.xml diff --git a/.idea/misc.xml b/.idea/misc.xml index 69d113f4..59cc9153 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -4,6 +4,29 @@ diff --git a/.idea/navEditor.xml b/.idea/navEditor.xml index 794fc6bf..1b5561fd 100644 --- a/.idea/navEditor.xml +++ b/.idea/navEditor.xml @@ -3,6 +3,28 @@ diff --git a/app/build.gradle b/app/build.gradle index 8936ea7c..0d8cee96 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -34,6 +34,10 @@ android { jvmTarget = JavaVersion.VERSION_1_8.toString() } buildToolsVersion = '29.0.2' + + dataBinding { + enabled = true + } } dependencies { @@ -82,6 +86,8 @@ dependencies { implementation "net.openid:appauth:0.7.1" implementation "com.journeyapps:zxing-android-embedded:$zxing_version" + + implementation "com.google.android.material:material:1.1.0" } repositories { diff --git a/app/src/main/java/jp/atled/agileworks/view/ui/DrawerMenu.kt b/app/src/main/java/jp/atled/agileworks/view/ui/DrawerMenu.kt index f10d0f09..d3393882 100644 --- a/app/src/main/java/jp/atled/agileworks/view/ui/DrawerMenu.kt +++ b/app/src/main/java/jp/atled/agileworks/view/ui/DrawerMenu.kt @@ -1,12 +1,15 @@ package jp.atled.agileworks.view.ui +import BottomSheetFragment import android.app.Activity import android.content.Intent +import android.view.View import android.widget.TextView import androidx.appcompat.app.AlertDialog import androidx.appcompat.app.AppCompatActivity import androidx.drawerlayout.widget.DrawerLayout import com.google.android.gms.oss.licenses.OssLicensesMenuActivity +import com.google.android.material.bottomsheet.BottomSheetBehavior import com.google.android.material.navigation.NavigationView import jp.atled.agileworks.R import jp.atled.agileworks.model.LoginRepository @@ -47,6 +50,9 @@ class DrawerMenu { } R.id.drawer_server_switching -> { + lateinit var bottomSheetFragment: BottomSheetFragment + bottomSheetFragment = BottomSheetFragment() + bottomSheetFragment.show(activity.supportFragmentManager, "BSDialogFragment") } } //押したらナビゲーションドロワーを閉じる @@ -88,5 +94,9 @@ class DrawerMenu { ProfileDialogFragment.create(userCode, userName, loginId, groupName, groupPartName).show(activity.supportFragmentManager, TAG) } } + + private fun showServerSwitchMenu(activity: AppCompatActivity) { + + } } } diff --git a/app/src/main/java/jp/atled/agileworks/view/ui/ServerSwitchingMenu.kt b/app/src/main/java/jp/atled/agileworks/view/ui/ServerSwitchingMenu.kt new file mode 100644 index 00000000..58241ba7 --- /dev/null +++ b/app/src/main/java/jp/atled/agileworks/view/ui/ServerSwitchingMenu.kt @@ -0,0 +1,80 @@ +import android.app.LauncherActivity +import android.content.Context +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import android.widget.* +import androidx.databinding.DataBindingUtil +import com.google.android.material.bottomsheet.BottomSheetDialogFragment +import jp.atled.agileworks.R + +data class ServerListData( + val serverName: String, + val approvalCount: String, + val imageId: Int +) + +class BottomSheetFragment : BottomSheetDialogFragment() { + override fun getTheme(): Int { + return R.style.AppBottomSheetDialogTheme + } + override fun onCreateView( + inflater: LayoutInflater, container: ViewGroup?, + savedInstanceState: Bundle?): View? { + var view: View = inflater.inflate(R.layout.fragment_server_switching,container,false) + + var listView = view.findViewById(R.id.serverListView) + val serverListData = getServerListData() + + val customAdapter = CustomAdapter(listView.context, serverListData) + listView.adapter = customAdapter + + return view + } + + fun getServerListData(): ArrayList { + var serverListData = ArrayList() + val serverList = arrayListOf(0, 1) + + for (i in serverList.indices) { + val serverName = "サーバー識別名" + var approvalCount = "" + var badge = R.drawable.ic_checkmark + if (i != 0) { + approvalCount = "111" + badge = R.drawable.ic_approval_badge + } + + val data = ServerListData(serverName, approvalCount, badge) + serverListData.add(data) + } + return serverListData + } +} + +class CustomAdapter(context: Context, var serverListData: List): ArrayAdapter(context, 0, serverListData) { + private val layoutInflater = context.getSystemService(Context.LAYOUT_INFLATER_SERVICE) as LayoutInflater + // getViewメソッドでレイアウトを設定 + override fun getView(position: Int, convertView: View?, parent: ViewGroup): View { +// Employeeを取得する + val data = serverListData[position] + //レイアウトの設定 + var view = convertView + if (convertView == null) { + view = layoutInflater.inflate(R.layout.server_list_row, parent, false) + } + + //それぞれの項目を表示するviewの設定 + val serverName = view?.findViewById(R.id.server_Name) + serverName?.text = data.serverName + + val badgeImage = view?.findViewById(R.id.badge_image) + badgeImage?.setImageResource(data.imageId) + + val numberLabel = view?.findViewById(R.id.number_label) + numberLabel?.text = data.approvalCount + + return view!! + } +} \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_approval_badge.xml b/app/src/main/res/drawable/ic_approval_badge.xml new file mode 100644 index 00000000..d99f071c --- /dev/null +++ b/app/src/main/res/drawable/ic_approval_badge.xml @@ -0,0 +1,5 @@ + + + diff --git a/app/src/main/res/drawable/ic_checkmark.xml b/app/src/main/res/drawable/ic_checkmark.xml new file mode 100644 index 00000000..9dd77089 --- /dev/null +++ b/app/src/main/res/drawable/ic_checkmark.xml @@ -0,0 +1,5 @@ + + + diff --git a/app/src/main/res/drawable/shape_rounded_dialog.xml b/app/src/main/res/drawable/shape_rounded_dialog.xml new file mode 100644 index 00000000..4bdd9617 --- /dev/null +++ b/app/src/main/res/drawable/shape_rounded_dialog.xml @@ -0,0 +1,8 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_server_switching.xml b/app/src/main/res/layout/fragment_server_switching.xml new file mode 100644 index 00000000..1f5a0e9a --- /dev/null +++ b/app/src/main/res/layout/fragment_server_switching.xml @@ -0,0 +1,44 @@ + + + + + + + + + +