Commit 9abc3994 authored by wanglei's avatar wanglei

...

parent 84d7f1a3
...@@ -4,6 +4,7 @@ import android.os.Environment ...@@ -4,6 +4,7 @@ import android.os.Environment
import androidx.activity.addCallback import androidx.activity.addCallback
import androidx.core.view.updatePadding import androidx.core.view.updatePadding
import com.base.scanqr.R import com.base.scanqr.R
import com.base.scanqr.ads.AdsMgr
import com.base.scanqr.base.BaseActivity import com.base.scanqr.base.BaseActivity
import com.base.scanqr.bean.EmailUIBean import com.base.scanqr.bean.EmailUIBean
import com.base.scanqr.bean.FunctionUIBean.Companion.KEY_EMAIL import com.base.scanqr.bean.FunctionUIBean.Companion.KEY_EMAIL
...@@ -31,11 +32,14 @@ class EmailCodeActivity : BaseActivity<ActivityEmailCodeBinding>(ActivityEmailCo ...@@ -31,11 +32,14 @@ class EmailCodeActivity : BaseActivity<ActivityEmailCodeBinding>(ActivityEmailCo
super.onResumeOneShoot() super.onResumeOneShoot()
val flag = changeLanguage() val flag = changeLanguage()
if (flag) return if (flag) return
AdsMgr.showBanner(binding.flBanner, false)
} }
override fun initView() { override fun initView() {
super.initView() super.initView()
binding.clTop.updatePadding(top = BarUtils.getStatusBarHeight()) binding.clTop.updatePadding(top = BarUtils.getStatusBarHeight())
AdsMgr.showNative(binding.flAd, R.layout.layout_admob_item)
val data = intent.extras?.getString("data") val data = intent.extras?.getString("data")
email = Gson().fromJson(data, EmailUIBean::class.java) email = Gson().fromJson(data, EmailUIBean::class.java)
......
...@@ -70,25 +70,7 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl ...@@ -70,25 +70,7 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl
} }
qrImageAnalyzer.parseAction = { qrCodeValue, valueType -> qrImageAnalyzer.parseAction = { qrCodeValue, valueType ->
val activity = requireActivity() as MainActivity? handleScan(qrCodeValue, valueType)
if (activity == null) {
handleScan(qrCodeValue, valueType)
} else {
AdsMgr.showInsert(activity, false, object : AdsShowCallBack() {
override fun close(where: Int) {
handleScan(qrCodeValue, valueType)
}
override fun failed(where: Int) {
handleScan(qrCodeValue, valueType)
}
override fun googleFailed(where: Int) {
handleScan(qrCodeValue, valueType)
}
})
}
} }
val activity = requireActivity() as MainActivity? val activity = requireActivity() as MainActivity?
activity ?: return activity ?: return
...@@ -138,12 +120,18 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl ...@@ -138,12 +120,18 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl
if (valueType == Barcode.TYPE_PRODUCT) { if (valueType == Barcode.TYPE_PRODUCT) {
if (scanJump.get()) return if (scanJump.get()) return
scanJump.set(true) scanJump.set(true)
activity.startActivity(Intent(activity, ProductCodeActivity::class.java).apply { AdsMgr.showInsert(activity, false, object : AdsShowCallBack() {
val bean = ProductUIBean() override fun close(where: Int) {
bean.content = qrCodeValue jumpProductCodeActivity(activity, qrCodeValue)
bean.needCreate = true }
bean.createType = CREATE_TYPE_SCAN
putExtra("data", Gson().toJson(bean)) override fun failed(where: Int) {
jumpProductCodeActivity(activity, qrCodeValue)
}
override fun googleFailed(where: Int) {
jumpProductCodeActivity(activity, qrCodeValue)
}
}) })
return return
} }
...@@ -151,11 +139,18 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl ...@@ -151,11 +139,18 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl
if (QRCodeUtils.isWifiQR(qrCodeValue)) { if (QRCodeUtils.isWifiQR(qrCodeValue)) {
if (scanJump.get()) return if (scanJump.get()) return
scanJump.set(true) scanJump.set(true)
activity.startActivity(Intent(activity, WifiCodeActivity::class.java).apply { AdsMgr.showInsert(activity, false, object : AdsShowCallBack() {
val bean = QRCodeUtils.createWifiBean(qrCodeValue) override fun close(where: Int) {
bean.needCreate = true jumpWifiCodeActivity(activity, qrCodeValue)
bean.createType = CREATE_TYPE_SCAN }
putExtra("data", Gson().toJson(bean))
override fun failed(where: Int) {
jumpWifiCodeActivity(activity, qrCodeValue)
}
override fun googleFailed(where: Int) {
jumpWifiCodeActivity(activity, qrCodeValue)
}
}) })
return return
} }
...@@ -163,41 +158,111 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl ...@@ -163,41 +158,111 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl
if (QRCodeUtils.isEmailQR(qrCodeValue)) { if (QRCodeUtils.isEmailQR(qrCodeValue)) {
if (scanJump.get()) return if (scanJump.get()) return
scanJump.set(true) scanJump.set(true)
activity.startActivity(Intent(activity, EmailCodeActivity::class.java).apply { AdsMgr.showInsert(activity, false, object : AdsShowCallBack() {
val bean = QRCodeUtils.createEmailBean(qrCodeValue) override fun close(where: Int) {
bean.needCreate = true jumpEmailCodeActivity(activity, qrCodeValue)
bean.createType = CREATE_TYPE_SCAN }
putExtra("data", Gson().toJson(bean))
override fun failed(where: Int) {
jumpEmailCodeActivity(activity, qrCodeValue)
}
override fun googleFailed(where: Int) {
jumpEmailCodeActivity(activity, qrCodeValue)
}
}) })
return return
} }
if (QRCodeUtils.isWebsiteQR(qrCodeValue)) { if (QRCodeUtils.isWebsiteQR(qrCodeValue)) {
if (scanJump.get()) return if (scanJump.get()) return
scanJump.set(true) scanJump.set(true)
activity.startActivity(Intent(activity, WebsiteCodeActivity::class.java).apply { AdsMgr.showInsert(activity, false, object : AdsShowCallBack() {
val bean = QRCodeUtils.createWebsiteBean(qrCodeValue) override fun close(where: Int) {
bean.needCreate = true jumpWebsiteCodeActivity(activity, qrCodeValue)
bean.createType = CREATE_TYPE_SCAN }
putExtra("data", Gson().toJson(bean))
override fun failed(where: Int) {
jumpWebsiteCodeActivity(activity, qrCodeValue)
}
override fun googleFailed(where: Int) {
jumpWebsiteCodeActivity(activity, qrCodeValue)
}
}) })
return return
} }
if (valueType == Barcode.TYPE_TEXT) {
if (qrCodeValue.isEmpty()) {
if (scanJump.get()) return if (scanJump.get()) return
scanJump.set(true) scanJump.set(true)
activity.startActivity(Intent(activity, TextCodeActivity::class.java).apply { AdsMgr.showInsert(activity, false, object : AdsShowCallBack() {
val bean = TextUIBean() override fun close(where: Int) {
bean.content = qrCodeValue jumpTextCodeActivity(activity, qrCodeValue)
bean.needCreate = true }
bean.createType = CREATE_TYPE_SCAN
putExtra("data", Gson().toJson(bean)) override fun failed(where: Int) {
jumpTextCodeActivity(activity, qrCodeValue)
}
override fun googleFailed(where: Int) {
jumpTextCodeActivity(activity, qrCodeValue)
}
}) })
return return
} }
} }
private fun jumpTextCodeActivity(activity: MainActivity, qrCodeValue: String) {
activity.startActivity(Intent(activity, TextCodeActivity::class.java).apply {
val bean = TextUIBean()
bean.content = qrCodeValue
bean.needCreate = true
bean.createType = CREATE_TYPE_SCAN
putExtra("data", Gson().toJson(bean))
})
}
private fun jumpWebsiteCodeActivity(activity: MainActivity, qrCodeValue: String) {
activity.startActivity(Intent(activity, WebsiteCodeActivity::class.java).apply {
val bean = QRCodeUtils.createWebsiteBean(qrCodeValue)
bean.needCreate = true
bean.createType = CREATE_TYPE_SCAN
putExtra("data", Gson().toJson(bean))
})
}
private fun jumpEmailCodeActivity(activity: MainActivity, qrCodeValue: String) {
activity.startActivity(Intent(activity, EmailCodeActivity::class.java).apply {
val bean = QRCodeUtils.createEmailBean(qrCodeValue)
bean.needCreate = true
bean.createType = CREATE_TYPE_SCAN
putExtra("data", Gson().toJson(bean))
})
}
private fun jumpWifiCodeActivity(activity: MainActivity, qrCodeValue: String) {
activity.startActivity(Intent(activity, WifiCodeActivity::class.java).apply {
val bean = QRCodeUtils.createWifiBean(qrCodeValue)
bean.needCreate = true
bean.createType = CREATE_TYPE_SCAN
putExtra("data", Gson().toJson(bean))
})
}
private fun jumpProductCodeActivity(activity: MainActivity, qrCodeValue: String) {
activity.startActivity(Intent(activity, ProductCodeActivity::class.java).apply {
val bean = ProductUIBean()
bean.content = qrCodeValue
bean.needCreate = true
bean.createType = CREATE_TYPE_SCAN
putExtra("data", Gson().toJson(bean))
})
}
override fun onStop() { override fun onStop() {
super.onStop() super.onStop()
val activity = requireActivity() as MainActivity? val activity = requireActivity() as MainActivity?
......
...@@ -8,6 +8,7 @@ import android.widget.Toast ...@@ -8,6 +8,7 @@ import android.widget.Toast
import androidx.activity.addCallback import androidx.activity.addCallback
import androidx.core.view.updatePadding import androidx.core.view.updatePadding
import com.base.scanqr.R import com.base.scanqr.R
import com.base.scanqr.ads.AdsMgr
import com.base.scanqr.base.BaseActivity import com.base.scanqr.base.BaseActivity
import com.base.scanqr.bean.FunctionUIBean import com.base.scanqr.bean.FunctionUIBean
import com.base.scanqr.bean.ProductUIBean import com.base.scanqr.bean.ProductUIBean
...@@ -37,10 +38,14 @@ class ProductCodeActivity : BaseActivity<ActivityProductCodeBinding>(ActivityPro ...@@ -37,10 +38,14 @@ class ProductCodeActivity : BaseActivity<ActivityProductCodeBinding>(ActivityPro
super.onResumeOneShoot() super.onResumeOneShoot()
val flag = changeLanguage() val flag = changeLanguage()
if (flag) return if (flag) return
AdsMgr.showBanner(binding.flBanner, false)
} }
override fun initView() { override fun initView() {
super.initView() super.initView()
binding.clTop.updatePadding(top = BarUtils.getStatusBarHeight()) binding.clTop.updatePadding(top = BarUtils.getStatusBarHeight())
AdsMgr.showNative(binding.flAd, R.layout.layout_admob_item)
val data = intent.extras?.getString("data") val data = intent.extras?.getString("data")
data?.let { data?.let {
......
...@@ -8,6 +8,7 @@ import android.widget.Toast ...@@ -8,6 +8,7 @@ import android.widget.Toast
import androidx.activity.addCallback import androidx.activity.addCallback
import androidx.core.view.updatePadding import androidx.core.view.updatePadding
import com.base.scanqr.R import com.base.scanqr.R
import com.base.scanqr.ads.AdsMgr
import com.base.scanqr.base.BaseActivity import com.base.scanqr.base.BaseActivity
import com.base.scanqr.bean.FunctionUIBean import com.base.scanqr.bean.FunctionUIBean
import com.base.scanqr.bean.ScanBean import com.base.scanqr.bean.ScanBean
...@@ -35,11 +36,14 @@ class TextCodeActivity : BaseActivity<ActivityTextCodeBinding>(ActivityTextCodeB ...@@ -35,11 +36,14 @@ class TextCodeActivity : BaseActivity<ActivityTextCodeBinding>(ActivityTextCodeB
super.onResumeOneShoot() super.onResumeOneShoot()
val flag = changeLanguage() val flag = changeLanguage()
if (flag) return if (flag) return
AdsMgr.showBanner(binding.flBanner, false)
} }
override fun initView() { override fun initView() {
super.initView() super.initView()
binding.clTop.updatePadding(top = BarUtils.getStatusBarHeight()) binding.clTop.updatePadding(top = BarUtils.getStatusBarHeight())
AdsMgr.showNative(binding.flAd, R.layout.layout_admob_item)
val data = intent.extras?.getString("data") val data = intent.extras?.getString("data")
data?.let { data?.let {
......
...@@ -5,6 +5,7 @@ import androidx.activity.addCallback ...@@ -5,6 +5,7 @@ import androidx.activity.addCallback
import androidx.core.view.updatePadding import androidx.core.view.updatePadding
import com.base.scanqr.BuildConfig import com.base.scanqr.BuildConfig
import com.base.scanqr.R import com.base.scanqr.R
import com.base.scanqr.ads.AdsMgr
import com.base.scanqr.base.BaseActivity import com.base.scanqr.base.BaseActivity
import com.base.scanqr.bean.FunctionUIBean import com.base.scanqr.bean.FunctionUIBean
import com.base.scanqr.bean.WebsiteUIBean import com.base.scanqr.bean.WebsiteUIBean
...@@ -30,10 +31,14 @@ class WebsiteCodeActivity : BaseActivity<ActivityWebsiteCodeBinding>(ActivityWeb ...@@ -30,10 +31,14 @@ class WebsiteCodeActivity : BaseActivity<ActivityWebsiteCodeBinding>(ActivityWeb
super.onResumeOneShoot() super.onResumeOneShoot()
val flag = changeLanguage() val flag = changeLanguage()
if (flag) return if (flag) return
AdsMgr.showBanner(binding.flBanner, false)
} }
override fun initView() { override fun initView() {
super.initView() super.initView()
binding.clTop.updatePadding(top = BarUtils.getStatusBarHeight()) binding.clTop.updatePadding(top = BarUtils.getStatusBarHeight())
AdsMgr.showNative(binding.flAd, R.layout.layout_admob_item)
val data = intent.extras?.getString("data") val data = intent.extras?.getString("data")
......
...@@ -4,6 +4,7 @@ import android.os.Environment ...@@ -4,6 +4,7 @@ import android.os.Environment
import androidx.activity.addCallback import androidx.activity.addCallback
import androidx.core.view.updatePadding import androidx.core.view.updatePadding
import com.base.scanqr.R import com.base.scanqr.R
import com.base.scanqr.ads.AdsMgr
import com.base.scanqr.base.BaseActivity import com.base.scanqr.base.BaseActivity
import com.base.scanqr.bean.FunctionUIBean import com.base.scanqr.bean.FunctionUIBean
import com.base.scanqr.bean.WifiUIBean import com.base.scanqr.bean.WifiUIBean
...@@ -32,11 +33,14 @@ class WifiCodeActivity : BaseActivity<ActivityWifiCodeBinding>(ActivityWifiCodeB ...@@ -32,11 +33,14 @@ class WifiCodeActivity : BaseActivity<ActivityWifiCodeBinding>(ActivityWifiCodeB
super.onResumeOneShoot() super.onResumeOneShoot()
val flag = changeLanguage() val flag = changeLanguage()
if (flag) return if (flag) return
AdsMgr.showBanner(binding.flBanner, false)
} }
override fun initView() { override fun initView() {
super.initView() super.initView()
binding.clTop.updatePadding(top = BarUtils.getStatusBarHeight()) binding.clTop.updatePadding(top = BarUtils.getStatusBarHeight())
AdsMgr.showNative(binding.flAd, R.layout.layout_admob_item)
val data = intent.extras?.getString("data") val data = intent.extras?.getString("data")
LogEx.logDebug(TAG, "data=$data") LogEx.logDebug(TAG, "data=$data")
......
...@@ -152,6 +152,7 @@ ...@@ -152,6 +152,7 @@
android:background="@drawable/bg_f4f4f4_15" android:background="@drawable/bg_f4f4f4_15"
android:gravity="start" android:gravity="start"
android:hint="@string/enter_your_message_here" android:hint="@string/enter_your_message_here"
android:maxLength="1000"
android:padding="14dp" android:padding="14dp"
android:singleLine="true" android:singleLine="true"
android:textColor="@color/black" android:textColor="@color/black"
......
...@@ -49,7 +49,8 @@ ...@@ -49,7 +49,8 @@
<androidx.core.widget.NestedScrollView <androidx.core.widget.NestedScrollView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="0dp"
app:layout_constraintBottom_toTopOf="@id/fl_banner"
app:layout_constraintTop_toBottomOf="@id/cl_top"> app:layout_constraintTop_toBottomOf="@id/cl_top">
<LinearLayout <LinearLayout
...@@ -75,6 +76,37 @@ ...@@ -75,6 +76,37 @@
</androidx.cardview.widget.CardView> </androidx.cardview.widget.CardView>
<com.base.scanqr.ads.NativeParentView
android:id="@+id/fl_ad"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="16dp"
android:layout_marginTop="24dp"
android:background="@drawable/bg_ecf6ff_20"
android:minHeight="133dp">
<io.supercharge.shimmerlayout.ShimmerLayout
android:id="@+id/shimmerLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginHorizontal="16dp"
app:shimmer_angle="25"
app:shimmer_animation_duration="2000"
app:shimmer_auto_start="true"
app:shimmer_color="#33ffffff"
app:shimmer_mask_width="0.2">
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@mipmap/czhanweitu"
tools:ignore="ContentDescription,ImageContrastCheck" />
</io.supercharge.shimmerlayout.ShimmerLayout>
</com.base.scanqr.ads.NativeParentView>
<androidx.cardview.widget.CardView <androidx.cardview.widget.CardView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
...@@ -319,4 +351,11 @@ ...@@ -319,4 +351,11 @@
</androidx.core.widget.NestedScrollView> </androidx.core.widget.NestedScrollView>
<FrameLayout
android:id="@id/fl_banner"
android:layout_width="match_parent"
android:layout_height="60dp"
app:layout_constraintBottom_toBottomOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
...@@ -47,7 +47,8 @@ ...@@ -47,7 +47,8 @@
<androidx.core.widget.NestedScrollView <androidx.core.widget.NestedScrollView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="0dp"
app:layout_constraintBottom_toTopOf="@id/fl_banner"
app:layout_constraintTop_toBottomOf="@id/cl_top"> app:layout_constraintTop_toBottomOf="@id/cl_top">
<LinearLayout <LinearLayout
...@@ -74,6 +75,38 @@ ...@@ -74,6 +75,38 @@
</androidx.cardview.widget.CardView> </androidx.cardview.widget.CardView>
<com.base.scanqr.ads.NativeParentView
android:id="@+id/fl_ad"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="16dp"
android:layout_marginTop="24dp"
android:background="@drawable/bg_ecf6ff_20"
android:minHeight="133dp">
<io.supercharge.shimmerlayout.ShimmerLayout
android:id="@+id/shimmerLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginHorizontal="16dp"
app:shimmer_angle="25"
app:shimmer_animation_duration="2000"
app:shimmer_auto_start="true"
app:shimmer_color="#33ffffff"
app:shimmer_mask_width="0.2">
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@mipmap/czhanweitu"
tools:ignore="ContentDescription,ImageContrastCheck" />
</io.supercharge.shimmerlayout.ShimmerLayout>
</com.base.scanqr.ads.NativeParentView>
<androidx.cardview.widget.CardView <androidx.cardview.widget.CardView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
...@@ -293,4 +326,10 @@ ...@@ -293,4 +326,10 @@
</androidx.core.widget.NestedScrollView> </androidx.core.widget.NestedScrollView>
<FrameLayout
android:id="@id/fl_banner"
android:layout_width="match_parent"
android:layout_height="60dp"
app:layout_constraintBottom_toBottomOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
...@@ -3,9 +3,9 @@ ...@@ -3,9 +3,9 @@
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:id="@+id/main" android:id="@+id/main"
android:background="@color/white"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@color/white"
tools:context=".ui.text.TextCodeActivity"> tools:context=".ui.text.TextCodeActivity">
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
...@@ -48,7 +48,8 @@ ...@@ -48,7 +48,8 @@
<androidx.core.widget.NestedScrollView <androidx.core.widget.NestedScrollView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="0dp"
app:layout_constraintBottom_toTopOf="@id/fl_banner"
app:layout_constraintTop_toBottomOf="@id/cl_top"> app:layout_constraintTop_toBottomOf="@id/cl_top">
<LinearLayout <LinearLayout
...@@ -74,6 +75,37 @@ ...@@ -74,6 +75,37 @@
</androidx.cardview.widget.CardView> </androidx.cardview.widget.CardView>
<com.base.scanqr.ads.NativeParentView
android:id="@+id/fl_ad"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="16dp"
android:layout_marginTop="24dp"
android:background="@drawable/bg_ecf6ff_20"
android:minHeight="133dp">
<io.supercharge.shimmerlayout.ShimmerLayout
android:id="@+id/shimmerLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginHorizontal="16dp"
app:shimmer_angle="25"
app:shimmer_animation_duration="2000"
app:shimmer_auto_start="true"
app:shimmer_color="#33ffffff"
app:shimmer_mask_width="0.2">
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@mipmap/czhanweitu"
tools:ignore="ContentDescription,ImageContrastCheck" />
</io.supercharge.shimmerlayout.ShimmerLayout>
</com.base.scanqr.ads.NativeParentView>
<androidx.cardview.widget.CardView <androidx.cardview.widget.CardView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
...@@ -294,4 +326,10 @@ ...@@ -294,4 +326,10 @@
</androidx.core.widget.NestedScrollView> </androidx.core.widget.NestedScrollView>
<FrameLayout
android:id="@id/fl_banner"
android:layout_width="match_parent"
android:layout_height="60dp"
app:layout_constraintBottom_toBottomOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
...@@ -48,7 +48,8 @@ ...@@ -48,7 +48,8 @@
<androidx.core.widget.NestedScrollView <androidx.core.widget.NestedScrollView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="0dp"
app:layout_constraintBottom_toTopOf="@id/fl_banner"
app:layout_constraintTop_toBottomOf="@id/cl_top"> app:layout_constraintTop_toBottomOf="@id/cl_top">
<LinearLayout <LinearLayout
...@@ -74,6 +75,37 @@ ...@@ -74,6 +75,37 @@
</androidx.cardview.widget.CardView> </androidx.cardview.widget.CardView>
<com.base.scanqr.ads.NativeParentView
android:id="@+id/fl_ad"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="16dp"
android:layout_marginTop="24dp"
android:background="@drawable/bg_ecf6ff_20"
android:minHeight="133dp">
<io.supercharge.shimmerlayout.ShimmerLayout
android:id="@+id/shimmerLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginHorizontal="16dp"
app:shimmer_angle="25"
app:shimmer_animation_duration="2000"
app:shimmer_auto_start="true"
app:shimmer_color="#33ffffff"
app:shimmer_mask_width="0.2">
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@mipmap/czhanweitu"
tools:ignore="ContentDescription,ImageContrastCheck" />
</io.supercharge.shimmerlayout.ShimmerLayout>
</com.base.scanqr.ads.NativeParentView>
<androidx.cardview.widget.CardView <androidx.cardview.widget.CardView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
...@@ -293,4 +325,11 @@ ...@@ -293,4 +325,11 @@
</androidx.core.widget.NestedScrollView> </androidx.core.widget.NestedScrollView>
<FrameLayout
android:id="@id/fl_banner"
android:layout_width="match_parent"
android:layout_height="60dp"
app:layout_constraintBottom_toBottomOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
\ 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