Commit 115fef2d authored by wanglei's avatar wanglei

...

parent d40c2db8
...@@ -40,9 +40,7 @@ ...@@ -40,9 +40,7 @@
android:supportsRtl="true" android:supportsRtl="true"
android:theme="@style/Theme.ScanQR" android:theme="@style/Theme.ScanQR"
tools:targetApi="31"> tools:targetApi="31">
<activity
android:name=".ui.scan.PdfResultActivity"
android:exported="false" />
<activity <activity
android:name=".ui.start.StartActivity" android:name=".ui.start.StartActivity"
android:exported="true" android:exported="true"
...@@ -255,6 +253,16 @@ ...@@ -255,6 +253,16 @@
android:exported="false" android:exported="false"
android:screenOrientation="portrait" android:screenOrientation="portrait"
tools:ignore="DiscouragedApi,LockedOrientationActivity" /> tools:ignore="DiscouragedApi,LockedOrientationActivity" />
<activity
android:name=".businesscard.BusinessCardActivity"
android:exported="false"
android:screenOrientation="portrait"
tools:ignore="DiscouragedApi,LockedOrientationActivity" />
<activity
android:name=".ui.scan.PdfResultActivity"
android:exported="false"
android:screenOrientation="portrait"
tools:ignore="DiscouragedApi,LockedOrientationActivity" />
<provider <provider
android:name="androidx.core.content.FileProvider" android:name="androidx.core.content.FileProvider"
......
package com.base.scanqrclear.businesscard
import android.graphics.Color
import android.view.LayoutInflater
import android.widget.TextView
import androidx.core.view.marginStart
import androidx.core.view.updatePadding
import com.base.scanqrclear.R
import com.base.scanqrclear.base.BaseActivity
import com.base.scanqrclear.databinding.ActivityBusinessCardBinding
import com.base.scanqrclear.databinding.ItemBusinessCardTabBinding
import com.base.scanqrclear.utils.BarUtils
import com.google.android.material.tabs.TabLayout
import com.google.android.material.tabs.TabLayout.OnTabSelectedListener
import com.gyf.immersionbar.ktx.immersionBar
class BusinessCardActivity : BaseActivity<ActivityBusinessCardBinding>(ActivityBusinessCardBinding::inflate) {
override fun initView() {
super.initView()
binding.clTop.updatePadding(top = BarUtils.getStatusBarHeight())
arrayOf(getString(R.string.horizontal_version), getString(R.string.vertical_version)).forEachIndexed { index, text ->
val tab = binding.tabLayout.newTab()
val view = LayoutInflater.from(this).inflate(R.layout.item_business_card_tab, null)
val tabBinding = ItemBusinessCardTabBinding.bind(view)
tabBinding.tvTab.text = text
// tabBinding.tvTab.setTextColor(ContextCompat.getColor(this, R.color.color_tab_home))
tab.customView = tabBinding.root
tab.id = index
binding.tabLayout.addTab(tab)
}
}
fun TabLayout.Tab.setUnselected() {
val textView = customView?.findViewById<TextView>(R.id.tvTab)
textView?.setTextColor(Color.parseColor("#666666"))
textView?.setBackgroundResource(R.drawable.bg_f0f1f7_90)
}
fun TabLayout.Tab.setSelected() {
val textView = customView?.findViewById<TextView>(R.id.tvTab)
textView?.setTextColor(Color.parseColor("#ffffff"))
textView?.setBackgroundResource(R.drawable.bg_6473f8_90)
}
override fun initListener() {
super.initListener()
binding.tabLayout.addOnTabSelectedListener(object : OnTabSelectedListener {
override fun onTabSelected(tab: TabLayout.Tab?) {
tab?.let {
it.setSelected()
naviFragment(tab.id)
}
}
override fun onTabUnselected(tab: TabLayout.Tab?) {
tab?.setUnselected()
}
override fun onTabReselected(tab: TabLayout.Tab?) {
}
})
}
private fun naviFragment(id: Int) {
if (binding.viewPager2.currentItem == id) return
}
override fun configSystemBar() {
immersionBar {
statusBarColor("#FFFFFFFF")
statusBarDarkFont(false)
}
}
}
\ No newline at end of file
...@@ -30,7 +30,6 @@ import com.base.scanqrclear.ui.widget.AppExitDialog.showAppExitDialog ...@@ -30,7 +30,6 @@ import com.base.scanqrclear.ui.widget.AppExitDialog.showAppExitDialog
import com.base.scanqrclear.ui.widget.NotificationDialog.showNotificationTurnOn import com.base.scanqrclear.ui.widget.NotificationDialog.showNotificationTurnOn
import com.base.scanqrclear.utils.AppPreferences import com.base.scanqrclear.utils.AppPreferences
import com.base.scanqrclear.utils.LogEx import com.base.scanqrclear.utils.LogEx
import com.base.scanqrclear.utils.OpenFoodFactsUtils
import com.base.scanqrclear.utils.PermissionUtils.areNotificationsEnabled import com.base.scanqrclear.utils.PermissionUtils.areNotificationsEnabled
import com.base.scanqrclear.utils.PermissionUtils.checkCameraPermission import com.base.scanqrclear.utils.PermissionUtils.checkCameraPermission
import com.google.android.material.tabs.TabLayout import com.google.android.material.tabs.TabLayout
......
...@@ -15,7 +15,9 @@ import com.base.scanqrclear.bean.FunctionUIBean.Companion.KEY_BUSINESS_CARD ...@@ -15,7 +15,9 @@ import com.base.scanqrclear.bean.FunctionUIBean.Companion.KEY_BUSINESS_CARD
import com.base.scanqrclear.bean.FunctionUIBean.Companion.KEY_COIN import com.base.scanqrclear.bean.FunctionUIBean.Companion.KEY_COIN
import com.base.scanqrclear.bean.FunctionUIBean.Companion.KEY_DOCUMENT import com.base.scanqrclear.bean.FunctionUIBean.Companion.KEY_DOCUMENT
import com.base.scanqrclear.bean.FunctionUIBean.Companion.KEY_FOOD import com.base.scanqrclear.bean.FunctionUIBean.Companion.KEY_FOOD
import com.base.scanqrclear.businesscard.BusinessCardActivity
import com.base.scanqrclear.databinding.ActivityScanOtherBinding import com.base.scanqrclear.databinding.ActivityScanOtherBinding
import com.base.scanqrclear.ui.main.ScanAc
import com.base.scanqrclear.utils.BarUtils import com.base.scanqrclear.utils.BarUtils
import com.base.scanqrclear.utils.LogEx import com.base.scanqrclear.utils.LogEx
import com.base.scanqrclear.utils.ToastUtils.toast import com.base.scanqrclear.utils.ToastUtils.toast
...@@ -54,6 +56,10 @@ class ScanOtherActivity : BaseActivity<ActivityScanOtherBinding>(ActivityScanOth ...@@ -54,6 +56,10 @@ class ScanOtherActivity : BaseActivity<ActivityScanOtherBinding>(ActivityScanOth
) )
adapter.itemClick = { item -> adapter.itemClick = { item ->
when (item.key) { when (item.key) {
KEY_FOOD -> {
startActivity(Intent(this, ScanAc::class.java))
}
KEY_DOCUMENT -> { KEY_DOCUMENT -> {
val options = GmsDocumentScannerOptions.Builder() val options = GmsDocumentScannerOptions.Builder()
.setGalleryImportAllowed(true) .setGalleryImportAllowed(true)
...@@ -71,6 +77,10 @@ class ScanOtherActivity : BaseActivity<ActivityScanOtherBinding>(ActivityScanOth ...@@ -71,6 +77,10 @@ class ScanOtherActivity : BaseActivity<ActivityScanOtherBinding>(ActivityScanOth
toast("Don't support GmsDocumentScanner", true) toast("Don't support GmsDocumentScanner", true)
} }
} }
KEY_BUSINESS_CARD -> {
startActivity(Intent(this, BusinessCardActivity::class.java))
}
} }
} }
} }
......
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="@color/white" android:state_selected="true" />
<item android:color="#666666" android:state_selected="false" />
</selector>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#F0F1F7" />
<corners android:radius="90dp" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true" android:drawable="@drawable/bg_6473f8_90"/>
<item android:state_selected="false" android:drawable="@drawable/bg_f0f1f7_90"/>
</selector>
\ No newline at end of file
<?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:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".businesscard.BusinessCardActivity">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/clTop"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintTop_toTopOf="parent">
<FrameLayout
android:id="@+id/flBack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="16dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/fanhui"
tools:ignore="ContentDescription" />
</FrameLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="5dp"
android:text="Business card"
android:textColor="#000000"
android:textSize="19sp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="@id/flBack"
app:layout_constraintStart_toEndOf="@id/flBack"
app:layout_constraintTop_toTopOf="@id/flBack"
tools:ignore="HardcodedText" />
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingVertical="12dp"
app:layout_constraintTop_toBottomOf="@id/flBack">
<com.google.android.material.tabs.TabLayout
android:id="@+id/tabLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginHorizontal="10dp"
app:tabIndicatorHeight="0dp"
app:tabMode="fixed"
app:tabRippleColor="@android:color/transparent"
app:tabTextColor="@color/color_tab"
tools:ignore="SpeakableTextPresentCheck" />
</FrameLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.viewpager2.widget.ViewPager2
android:id="@+id/viewPager2"
android:layout_width="match_parent"
android:layout_height="0dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toBottomOf="@id/clTop" />
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/tvTab"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="5dp"
android:background="@drawable/bg_tab"
android:gravity="center"
android:paddingHorizontal="20dp"
android:paddingVertical="10dp"
android:text="@string/horizontal_version"
android:textSize="15sp"
android:textStyle="bold" />
...@@ -290,5 +290,7 @@ ...@@ -290,5 +290,7 @@
<string name="document_scan">Document Scan</string> <string name="document_scan">Document Scan</string>
<string name="business_card">Business card</string> <string name="business_card">Business card</string>
<string name="do_you_want_to_delete_this_barcode">Do you want to delete this barcode?</string> <string name="do_you_want_to_delete_this_barcode">Do you want to delete this barcode?</string>
<string name="horizontal_version">Horizontal Version</string>
<string name="vertical_version">Vertical Version</string>
</resources> </resources>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment