This commit is contained in:
LUX-Timber 2024-04-07 18:10:32 +08:00
parent da48cc1919
commit b3af89b9a9
11 changed files with 134 additions and 54 deletions

View File

@ -72,7 +72,6 @@ class ApplyActivity : AppCompatActivity(), View.OnClickListener {
binding.idStep2.setOnClickListener(this) binding.idStep2.setOnClickListener(this)
binding.applyBack.setOnClickListener(this) binding.applyBack.setOnClickListener(this)
} }
override fun onResume() { override fun onResume() {
@ -106,7 +105,7 @@ class ApplyActivity : AppCompatActivity(), View.OnClickListener {
} else { } else {
binding.idStep2.setBackgroundResource(R.drawable.shape_theme_set) binding.idStep2.setBackgroundResource(R.drawable.shape_theme_set)
} }
if (isChoose()&&isEnable()){ if (isChoose() && isEnable()) {
showDialog() showDialog()
} }
} }

View File

@ -20,6 +20,7 @@ import androidx.core.view.GravityCompat
import androidx.drawerlayout.widget.DrawerLayout import androidx.drawerlayout.widget.DrawerLayout
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentPagerAdapter import androidx.fragment.app.FragmentPagerAdapter
import com.google.android.material.button.MaterialButtonToggleGroup
import com.google.android.material.tabs.TabLayout import com.google.android.material.tabs.TabLayout
import com.timber.soft.newkeyboard.R import com.timber.soft.newkeyboard.R
import com.timber.soft.newkeyboard.databinding.ActivityMainBinding import com.timber.soft.newkeyboard.databinding.ActivityMainBinding
@ -60,11 +61,8 @@ class MainActivity : AppCompatActivity() {
(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN or View.SYSTEM_UI_FLAG_LAYOUT_STABLE) or View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR (View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN or View.SYSTEM_UI_FLAG_LAYOUT_STABLE) or View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR
window.statusBarColor = Color.TRANSPARENT window.statusBarColor = Color.TRANSPARENT
} }
initDrawer() initDrawer()
initTabLayOut() initTabLayOut()
binding.viewpager.offscreenPageLimit = 3 binding.viewpager.offscreenPageLimit = 3
binding.viewpager.adapter = object : FragmentPagerAdapter(supportFragmentManager) { binding.viewpager.adapter = object : FragmentPagerAdapter(supportFragmentManager) {
override fun getCount(): Int { override fun getCount(): Int {
@ -81,6 +79,23 @@ class MainActivity : AppCompatActivity() {
} }
binding.tabLayout.setupWithViewPager(binding.viewpager) binding.tabLayout.setupWithViewPager(binding.viewpager)
// val toggleGroup = findViewById<MaterialButtonToggleGroup>(R.id.toggle_group)
// toggleGroup.addOnButtonCheckedListener { group, checkedId, isChecked ->
// if (isChecked) {
// when (checkedId) {
// R.id.bt1 -> binding.drawerParent.closeDrawer(GravityCompat.END)
// R.id.bt2 -> binding.drawerParent.openDrawer(GravityCompat.END)
// }
// }
// }
binding.bt1.setOnClickListener(){
binding.drawerParent.closeDrawer(GravityCompat.END)
}
binding.bt2.setOnClickListener(){
binding.drawerParent.openDrawer(GravityCompat.END)
}
} }
private fun initTabLayOut() { private fun initTabLayOut() {
@ -128,7 +143,7 @@ class MainActivity : AppCompatActivity() {
val textView = TextView(this) val textView = TextView(this)
//字体样式 //字体样式
val selectedSize = val selectedSize =
TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_PX, 22f, resources.displayMetrics) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_PX, 24f, resources.displayMetrics)
textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, selectedSize) textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, selectedSize)
textView.typeface = Typeface.defaultFromStyle(Typeface.BOLD) //加粗 textView.typeface = Typeface.defaultFromStyle(Typeface.BOLD) //加粗
textView.gravity = Gravity.CENTER textView.gravity = Gravity.CENTER
@ -139,6 +154,7 @@ class MainActivity : AppCompatActivity() {
} }
private fun initDrawer() { private fun initDrawer() {
binding.drawerParent.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED)
binding.layoutRate.setOnClickListener() { binding.layoutRate.setOnClickListener() {
val url = getString(R.string.share_link) + packageName val url = getString(R.string.share_link) + packageName
// 创建intent打开链接 // 创建intent打开链接
@ -159,15 +175,13 @@ class MainActivity : AppCompatActivity() {
val intent = Intent(this, ApplyActivity::class.java) val intent = Intent(this, ApplyActivity::class.java)
startActivity(intent) startActivity(intent)
} }
binding.drawerBack.setOnClickListener(){
binding.drawerParent.closeDrawer(GravityCompat.END)
}
// 绑定抽屉中的版本信息 // 绑定抽屉中的版本信息
val versionName = getVersionName() val versionName = getVersionName()
binding.textAppVersion.text = versionName binding.textAppVersion.text = versionName
// 打开抽屉
binding.imageMenu.setOnClickListener() {
binding.drawerParent.openDrawer(GravityCompat.START)
}
binding.drawerParent.addDrawerListener(object : DrawerLayout.DrawerListener { binding.drawerParent.addDrawerListener(object : DrawerLayout.DrawerListener {
override fun onDrawerSlide(drawerView: View, slideOffset: Float) { override fun onDrawerSlide(drawerView: View, slideOffset: Float) {
} }

View File

@ -36,15 +36,15 @@ class MyKeyboardView @JvmOverloads constructor(
lateinit var spBackgroundDraw: Drawable lateinit var spBackgroundDraw: Drawable
lateinit var normalBackgroundDraw: Drawable lateinit var normalBackgroundDraw: Drawable
var icShittLock: Drawable? = var icShittLock: Drawable? =
ContextCompat.getDrawable(context, R.drawable.svg_shift_lit) ContextCompat.getDrawable(context, R.drawable.svg_shift)
var icDel: Drawable? = var icDel: Drawable? =
ContextCompat.getDrawable(context, R.drawable.svg_dele) ContextCompat.getDrawable(context, R.drawable.svg_delete)
var allBg: Drawable? = var allBg: Drawable? =
ContextCompat.getDrawable(context, R.mipmap.main_bg) ContextCompat.getDrawable(context, R.mipmap.main_bg)
var icBshift: Drawable? = var icBshift: Drawable? =
ContextCompat.getDrawable(context, R.drawable.svg_shift_lit) ContextCompat.getDrawable(context, R.drawable.svg_shift)
var icSshift: Drawable? = var icSshift: Drawable? =
ContextCompat.getDrawable(context, R.drawable.svg_shift_lit) ContextCompat.getDrawable(context, R.drawable.svg_shift)
@RequiresApi(Build.VERSION_CODES.M) @RequiresApi(Build.VERSION_CODES.M)
var keycolor: Int = context.resources.getColor(R.color.white, null) var keycolor: Int = context.resources.getColor(R.color.white, null)
@ -87,8 +87,6 @@ class MyKeyboardView @JvmOverloads constructor(
} }
eventT = xmlP.next() eventT = xmlP.next()
} }
} }
@ -151,7 +149,6 @@ class MyKeyboardView @JvmOverloads constructor(
} }
getbgic(con, it.plus(AppVal.parent_path).plus(AppVal.title_shitf_ic))?.let { getbgic(con, it.plus(AppVal.parent_path).plus(AppVal.title_shitf_ic))?.let {
icSshift = it icSshift = it
icBshift = it icBshift = it
@ -209,9 +206,9 @@ class MyKeyboardView @JvmOverloads constructor(
myKey.icon = this myKey.icon = this
var icon_w = myKey.icon.intrinsicWidth.toFloat() var icon_w = myKey.icon.intrinsicWidth.toFloat()
var icon_wr = icon_w / myKey.width.toFloat() val icon_wr = icon_w / myKey.width.toFloat()
var icon_h = myKey.icon.intrinsicHeight.toFloat() var icon_h = myKey.icon.intrinsicHeight.toFloat()
var icon_hr = icon_h / myKey.height.toFloat() val icon_hr = icon_h / myKey.height.toFloat()
var tep1 = 0f var tep1 = 0f

View File

@ -2,6 +2,6 @@
<shape xmlns:android="http://schemas.android.com/apk/res/android" <shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle"> android:shape="rectangle">
<solid android:color="@color/theme_color"/> <solid android:color="@color/theme_color"/>
<corners android:radius="10dp"/> <corners android:radius="24dp"/>
</shape> </shape>

View File

@ -2,6 +2,6 @@
<shape xmlns:android="http://schemas.android.com/apk/res/android" <shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle"> android:shape="rectangle">
<solid android:color="#7E7E7E"/> <solid android:color="#7E7E7E"/>
<corners android:radius="10dp"/> <corners android:radius="24dp"/>
</shape> </shape>

View File

@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="64dp"
android:height="64dp"
android:viewportWidth="1024"
android:viewportHeight="1024">
<path
android:pathData="M999,153a82.8,82.8 0,0 0,-59.4 -25L937.9,128h0.1,-640a81.7,81.7 0,0 0,-67.8 37.7l-0.2,0.3L0,512l230,346A81.8,81.8 0,0 0,298 896h641.7c23.3,0 44.3,-9.6 59.4,-25a82.9,82.9 0,0 0,25 -59.5v-1.6,0.1L1024,214 1024,212.5c0,-23.3 -9.6,-44.4 -25,-59.4zM780.3,695.8a42.3,42.3 0,0 1,-60.2 0l-122,-123.7 -124,124a42.6,42.6 0,0 1,-60 0c-7.7,-7.7 -12.4,-18.3 -12.4,-30s4.7,-22.3 12.4,-30l124,-124 -124,-124a42.3,42.3 0,0 1,0 -60,42.6 42.6,0 0,1 60,0l124,124 122,-123.7a42.2,42.2 0,0 1,60.2 0,42.2 42.2,0 0,1 0.2,59.7l-122.4,124 122.4,124a42.2,42.2 0,0 1,-0.2 59.7z"
android:fillColor="#ffffff"/>
</vector>

View File

@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="64dp"
android:height="64dp"
android:viewportWidth="1024"
android:viewportHeight="1024">
<path
android:pathData="M63.3,959.2v-63.1h897v63.1h-897zM175.5,863.1L175.5,545.7l336.4,-336.4 336.4,336.4v317.4L624,863.1L624,622.8L399.7,622.8v240.3L175.5,863.1zM511.8,139.2L98.4,552.7l-35,-42L511.8,62.1 659,209.3L659,97.2h154.2v266.3l147.2,147.2 -35,42 -413.6,-413.5z"
android:fillColor="#ffffff"/>
</vector>

View File

@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="64dp"
android:height="64dp"
android:viewportWidth="1024"
android:viewportHeight="1024">
<path
android:pathData="M332.6,468.9h582c24.7,0 44.8,20 44.8,44.8 0,24.7 -20,44.8 -44.8,44.8h-582c-24.7,0 -44.8,-20 -44.8,-44.8 0,-24.7 20,-44.8 44.8,-44.8zM108.7,468.9h44.8c24.7,0 44.8,20 44.8,44.8 0,24.7 -20,44.8 -44.8,44.8h-44.8c-24.7,0 -44.8,-20 -44.8,-44.8 0.1,-24.7 20.1,-44.8 44.8,-44.8zM108.7,737.5h805.8c24.7,0 44.8,20 44.8,44.8 0,24.7 -20,44.8 -44.8,44.8H108.7C84,827.1 64,807 64,782.3c0,-24.7 20,-44.8 44.7,-44.8zM108.7,200.3h805.8c24.7,0 44.8,20 44.8,44.8 0,24.7 -20,44.8 -44.8,44.8H108.7c-24.7,0 -44.8,-20 -44.8,-44.8 0.1,-24.7 20.1,-44.8 44.8,-44.8z"
android:fillColor="#ffffff"/>
</vector>

View File

@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="64dp"
android:height="64dp"
android:viewportWidth="1024"
android:viewportHeight="1024">
<path
android:pathData="M693.3,874.7a32,32 0,0 1,4.4 63.7L693.3,938.7h-362.7a32,32 0,0 1,-4.4 -63.7l4.4,-0.3h362.7zM469.6,101.2a74.7,74.7 0,0 1,95.1 8.7l4.6,5 335.6,402.7a74.7,74.7 0,0 1,-51.2 122.2l-6.1,0.3h-122.3v96a74.7,74.7 0,0 1,-62.2 73.6l-6.3,0.8 -6.1,0.3h-277.3a74.7,74.7 0,0 1,-74.4 -68.6L298.7,736 298.6,640L176.4,640a74.7,74.7 0,0 1,-35.5 -9l-6.4,-3.8 -6,-4.5a74.7,74.7 0,0 1,-13.7 -99.7l4.1,-5.4 335.6,-402.7 4.6,-5 5,-4.6 5.4,-4.1zM520.2,155.8a10.7,10.7 0,0 0,-12.6 -2.9l-2.4,1.5 -1.4,1.4 -335.6,402.7a10.7,10.7 0,0 0,5.7 17.2l2.5,0.3L330.7,576a32,32 0,0 1,31.7 27.6l0.3,4.4v128a10.7,10.7 0,0 0,8.2 10.4l2.5,0.3h277.3a10.7,10.7 0,0 0,10.4 -8.2l0.3,-2.4v-128a32,32 0,0 1,27.6 -31.7l4.4,-0.3h154.2a10.7,10.7 0,0 0,9.5 -15.4l-1.3,-2 -335.6,-402.7z"
android:fillColor="#ffffff"/>
</vector>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
@ -16,39 +16,14 @@
android:id="@+id/backgroundLayout" android:id="@+id/backgroundLayout"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent">
<!--菜单按钮-->
<ImageView
android:id="@+id/image_menu"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_marginStart="7dp"
android:padding="10dp"
android:src="@drawable/svg_menu"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<!--上方标题-->
<TextView
android:id="@+id/tv_title"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:gravity="center"
android:text="@string/app_name"
android:textColor="@color/black"
android:textSize="20sp"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<!--tab--> <!--tab-->
<com.google.android.material.tabs.TabLayout <com.google.android.material.tabs.TabLayout
android:id="@+id/tabLayout" android:id="@+id/tabLayout"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="38dp" android:layout_height="52dp"
android:layout_marginTop="4dp" android:layout_marginTop="8dp"
app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toBottomOf="@id/tv_title" app:layout_constraintTop_toTopOf="parent"
app:tabIndicatorColor="@color/theme_color" app:tabIndicatorColor="@color/theme_color"
app:tabIndicatorFullWidth="false" app:tabIndicatorFullWidth="false"
app:tabMode="scrollable" /> app:tabMode="scrollable" />
@ -66,11 +41,23 @@
<!--抽屉视图--> <!--抽屉视图-->
<RelativeLayout <RelativeLayout
android:id="@+id/drawer_recycler_view" android:id="@+id/drawer_recycler_view"
android:layout_width="280dp" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_gravity="start" android:layout_marginEnd="-65dp"
android:layout_gravity="end"
android:background="@color/white"> android:background="@color/white">
<ImageView
android:id="@+id/drawer_back"
android:layout_width="33dp"
android:layout_height="33dp"
android:layout_marginStart="8dp"
android:layout_marginTop="10dp"
android:padding="5dp"
android:src="@drawable/svg_return"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<!--抽屉头部--> <!--抽屉头部-->
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/topPanel" android:id="@+id/topPanel"
@ -206,7 +193,52 @@
</RelativeLayout> </RelativeLayout>
</androidx.drawerlayout.widget.DrawerLayout> </androidx.drawerlayout.widget.DrawerLayout>
</FrameLayout>
<!-- MaterialButtonToggleGroup实现的LinearLayout接口-->
<com.google.android.material.button.MaterialButtonToggleGroup
android:id="@+id/toggle_group"
android:layout_width="180dp"
android:layout_height="52dp"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginStart="32dp"
android:layout_marginEnd="32dp"
android:layout_marginBottom="32dp"
android:gravity="center"
app:checkedButton="@+id/bt1"
app:selectionRequired="true"
app:singleSelection="true">
<!-- android:layout_weight="1"设置权重,宽度自定义-->
<com.google.android.material.button.MaterialButton
android:id="@+id/bt1"
android:layout_width="0dp"
android:layout_height="60dp"
android:layout_weight="1"
android:backgroundTint="@color/theme_color"
android:text="@string/but_home"
android:textColor="@color/white"
android:textSize="10dp"
app:cornerRadius="26dp"
app:icon="@drawable/svg_home"
app:iconGravity="textTop" />
<com.google.android.material.button.MaterialButton
android:id="@+id/bt2"
android:layout_width="0dp"
android:layout_height="60dp"
android:layout_weight="1"
android:backgroundTint="@color/theme_color"
android:text="@string/but_info"
android:textColor="@color/white"
android:textSize="10dp"
app:cornerRadius="26dp"
app:icon="@drawable/svg_menu_main"
app:iconGravity="textTop" />
</com.google.android.material.button.MaterialButtonToggleGroup>
</RelativeLayout>

View File

@ -13,4 +13,6 @@
<string name="fail_apply">Application failed, please try again</string> <string name="fail_apply">Application failed, please try again</string>
<string name="text_promote">For normal use, please enter the setting to complete the setting steps.</string> <string name="text_promote">For normal use, please enter the setting to complete the setting steps.</string>
<string name="loading_keyboard">Loading…</string> <string name="loading_keyboard">Loading…</string>
<string name="but_home">Home</string>
<string name="but_info">Menu</string>
</resources> </resources>