Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in / Register
Toggle navigation
P
Pdf one Reader
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wanglei
Pdf one Reader
Commits
39eda934
Commit
39eda934
authored
Nov 13, 2024
by
wanglei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
...处理刷新
parent
dc25fd17
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
163 additions
and
61 deletions
+163
-61
AndroidManifest.xml
app/src/main/AndroidManifest.xml
+1
-1
DocumentActivity.kt
.../java/com/base/pdfoneread/ui/document/DocumentActivity.kt
+2
-2
DocumentAdapter.kt
...n/java/com/base/pdfoneread/ui/document/DocumentAdapter.kt
+2
-1
DocumentEx.kt
...c/main/java/com/base/pdfoneread/ui/document/DocumentEx.kt
+18
-4
HomeFragment.kt
...src/main/java/com/base/pdfoneread/ui/main/HomeFragment.kt
+13
-3
MainActivity.kt
...src/main/java/com/base/pdfoneread/ui/main/MainActivity.kt
+21
-7
SearchActivity.kt
...main/java/com/base/pdfoneread/ui/search/SearchActivity.kt
+5
-6
SearchPageFragment.kt
.../java/com/base/pdfoneread/ui/search/SearchPageFragment.kt
+85
-29
activity_document.xml
app/src/main/res/layout/activity_document.xml
+1
-0
activity_search.xml
app/src/main/res/layout/activity_search.xml
+2
-2
fragment_search_page.xml
app/src/main/res/layout/fragment_search_page.xml
+13
-6
No files found.
app/src/main/AndroidManifest.xml
View file @
39eda934
...
@@ -42,7 +42,7 @@
...
@@ -42,7 +42,7 @@
<activity
<activity
android:name=
".ui.main.MainActivity"
android:name=
".ui.main.MainActivity"
android:exported=
"true"
android:exported=
"true"
android:launchMode=
"singleT
op
"
android:launchMode=
"singleT
ask
"
android:screenOrientation=
"portrait"
android:screenOrientation=
"portrait"
tools:ignore=
"DiscouragedApi,LockedOrientationActivity"
/>
tools:ignore=
"DiscouragedApi,LockedOrientationActivity"
/>
...
...
app/src/main/java/com/base/pdfoneread/ui/document/DocumentActivity.kt
View file @
39eda934
...
@@ -176,7 +176,7 @@ class DocumentActivity : BaseActivity<ActivityDocumentBinding>() {
...
@@ -176,7 +176,7 @@ class DocumentActivity : BaseActivity<ActivityDocumentBinding>() {
initData
()
initData
()
}
else
{
}
else
{
binding
.
llEmpty
.
visibility
=
View
.
GONE
binding
.
llEmpty
.
visibility
=
View
.
GONE
adapter
?.
submitList
(
list
)
adapter
?.
submitList
(
getRvAdList
(
list
)
)
}
}
}
}
...
@@ -197,7 +197,7 @@ class DocumentActivity : BaseActivity<ActivityDocumentBinding>() {
...
@@ -197,7 +197,7 @@ class DocumentActivity : BaseActivity<ActivityDocumentBinding>() {
adapter
?.
submitList
(
listOf
())
adapter
?.
submitList
(
listOf
())
}
else
{
}
else
{
binding
.
llEmpty
.
visibility
=
View
.
GONE
binding
.
llEmpty
.
visibility
=
View
.
GONE
adapter
?.
submitList
(
list
)
adapter
?.
submitList
(
getRvAdList
(
list
)
)
}
}
binding
.
swipeRefreshLayout
.
isRefreshing
=
false
binding
.
swipeRefreshLayout
.
isRefreshing
=
false
}
}
...
...
app/src/main/java/com/base/pdfoneread/ui/document/DocumentAdapter.kt
View file @
39eda934
...
@@ -7,6 +7,7 @@ import android.view.View
...
@@ -7,6 +7,7 @@ import android.view.View
import
android.view.ViewGroup
import
android.view.ViewGroup
import
androidx.recyclerview.widget.RecyclerView.ViewHolder
import
androidx.recyclerview.widget.RecyclerView.ViewHolder
import
com.base.pdfoneread.R
import
com.base.pdfoneread.R
import
com.base.pdfoneread.ads.admob.AdmobNativeUtils
import
com.base.pdfoneread.bean.DocumentBean
import
com.base.pdfoneread.bean.DocumentBean
import
com.base.pdfoneread.bean.DocumentBean.Companion.TYPE_EXCEL
import
com.base.pdfoneread.bean.DocumentBean.Companion.TYPE_EXCEL
import
com.base.pdfoneread.bean.DocumentBean.Companion.TYPE_PDF
import
com.base.pdfoneread.bean.DocumentBean.Companion.TYPE_PDF
...
@@ -38,7 +39,7 @@ class DocumentAdapter(
...
@@ -38,7 +39,7 @@ class DocumentAdapter(
item
?:
return
item
?:
return
if
(
item
.
isAd
)
{
if
(
item
.
isAd
)
{
val
binding
=
ItemAdBinding
.
bind
(
holder
.
itemView
)
val
binding
=
ItemAdBinding
.
bind
(
holder
.
itemView
)
//
AdmobNativeUtils.showNativeAd(activity, binding.flAd, R.layout.layout_admob_document)
AdmobNativeUtils
.
showNativeAd
(
activity
,
binding
.
flAd
,
R
.
layout
.
layout_admob_document
)
}
else
{
}
else
{
val
binding
=
ItemDocumentBinding
.
bind
(
holder
.
itemView
)
val
binding
=
ItemDocumentBinding
.
bind
(
holder
.
itemView
)
...
...
app/src/main/java/com/base/pdfoneread/ui/document/DocumentEx.kt
View file @
39eda934
...
@@ -4,6 +4,7 @@ import android.content.Context
...
@@ -4,6 +4,7 @@ import android.content.Context
import
android.media.MediaScannerConnection
import
android.media.MediaScannerConnection
import
android.net.Uri
import
android.net.Uri
import
android.os.Environment
import
android.os.Environment
import
com.base.pdfoneread.ads.AdmobHelper
import
com.base.pdfoneread.ui.MyApplication.Companion.appContext
import
com.base.pdfoneread.ui.MyApplication.Companion.appContext
import
com.base.pdfoneread.bean.ConstObject
import
com.base.pdfoneread.bean.ConstObject
import
com.base.pdfoneread.bean.ConstObject.MIME_TYPE_DOC
import
com.base.pdfoneread.bean.ConstObject.MIME_TYPE_DOC
...
@@ -27,6 +28,7 @@ import com.base.pdfoneread.utils.getMediaFile
...
@@ -27,6 +28,7 @@ import com.base.pdfoneread.utils.getMediaFile
import
java.io.File
import
java.io.File
import
java.io.FileOutputStream
import
java.io.FileOutputStream
import
java.io.IOException
import
java.io.IOException
import
java.util.concurrent.CopyOnWriteArrayList
/**
/**
...
@@ -41,10 +43,10 @@ fun getGlobalAllList(): ArrayList<DocumentBean> {
...
@@ -41,10 +43,10 @@ fun getGlobalAllList(): ArrayList<DocumentBean> {
return
arrayListOf
return
arrayListOf
}
}
val
GlobalPdfList
=
arrayListOf
<
DocumentBean
>()
val
GlobalPdfList
=
CopyOnWriteArrayList
<
DocumentBean
>()
val
GlobalWordList
=
arrayListOf
<
DocumentBean
>()
val
GlobalWordList
=
CopyOnWriteArrayList
<
DocumentBean
>()
var
GlobalExcelList
=
arrayListOf
<
DocumentBean
>()
var
GlobalExcelList
=
CopyOnWriteArrayList
<
DocumentBean
>()
var
GlobalPptList
=
arrayListOf
<
DocumentBean
>()
var
GlobalPptList
=
CopyOnWriteArrayList
<
DocumentBean
>()
fun
cleanGlobalData
()
{
fun
cleanGlobalData
()
{
GlobalPdfList
.
clear
()
GlobalPdfList
.
clear
()
...
@@ -345,4 +347,16 @@ fun saveBookmarkChange(addRemove: Boolean, path: String) {
...
@@ -345,4 +347,16 @@ fun saveBookmarkChange(addRemove: Boolean, path: String) {
}
else
{
}
else
{
SpStringUtils
.
deleteSpString
(
BOOKMARK_KEY
,
path
)
SpStringUtils
.
deleteSpString
(
BOOKMARK_KEY
,
path
)
}
}
}
fun
getRvAdList
(
list
:
List
<
DocumentBean
>):
List
<
DocumentBean
>
{
val
flag
=
AdmobHelper
.
isShowRvNativeAd
()
if
(
flag
)
{
val
arrayList
=
arrayListOf
<
DocumentBean
>()
arrayList
.
addAll
(
list
)
arrayList
.
add
(
1
,
DocumentBean
().
apply
{
isAd
=
true
})
return
arrayList
}
return
list
}
}
\ No newline at end of file
app/src/main/java/com/base/pdfoneread/ui/main/HomeFragment.kt
View file @
39eda934
...
@@ -51,6 +51,7 @@ class HomeFragment() : Fragment() {
...
@@ -51,6 +51,7 @@ class HomeFragment() : Fragment() {
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
super
.
onCreate
(
savedInstanceState
)
super
.
onCreate
(
savedInstanceState
)
LogEx
.
logDebug
(
TAG
,
"onCreate"
)
}
}
override
fun
onCreateView
(
override
fun
onCreateView
(
...
@@ -114,14 +115,23 @@ class HomeFragment() : Fragment() {
...
@@ -114,14 +115,23 @@ class HomeFragment() : Fragment() {
}
}
binding
.
swipeRefreshLayout
.
setOnRefreshListener
{
binding
.
swipeRefreshLayout
.
setOnRefreshListener
{
refreshData
()
refreshData
(
"swipeRefreshLayout"
)
}
}
refreshData
(
"onViewCreated"
)
}
refreshData
()
override
fun
onDestroyView
()
{
super
.
onDestroyView
()
LogEx
.
logDebug
(
TAG
,
"onDestroyView"
)
}
override
fun
onDestroy
()
{
super
.
onDestroy
()
LogEx
.
logDebug
(
TAG
,
"onDestroy"
)
}
}
fun
refreshData
()
{
fun
refreshData
(
where
:
String
=
""
)
{
LogEx
.
logDebug
(
TAG
,
"refreshData where=$where"
)
kotlin
.
runCatching
{
kotlin
.
runCatching
{
lifecycleScope
.
launch
(
Dispatchers
.
IO
)
{
lifecycleScope
.
launch
(
Dispatchers
.
IO
)
{
...
...
app/src/main/java/com/base/pdfoneread/ui/main/MainActivity.kt
View file @
39eda934
...
@@ -47,7 +47,9 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
...
@@ -47,7 +47,9 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
changeHomeRvIcon
()
changeHomeRvIcon
()
if
(!
checkStorePermission
())
{
if
(!
checkStorePermission
())
{
showStoragePermission
(
launcher
)
{
refreshHomeData
()
}
showStoragePermission
(
launcher
)
{
refreshHomeData
()
}
}
}
}
}
...
@@ -68,6 +70,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
...
@@ -68,6 +70,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
changeHomeUI
()
changeHomeUI
()
}
}
binding
.
llHome
.
callOnClick
()
binding
.
llHome
.
callOnClick
()
binding
.
llRecent
.
setOnClickListener
{
binding
.
llRecent
.
setOnClickListener
{
changeRecentUI
()
changeRecentUI
()
}
}
...
@@ -122,8 +125,12 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
...
@@ -122,8 +125,12 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
val
appName
=
resources
.
getString
(
R
.
string
.
app_name
)
val
appName
=
resources
.
getString
(
R
.
string
.
app_name
)
binding
.
tvTittle
.
text
=
colorSpanner
(
appName
,
Color
.
parseColor
(
"#FD1010"
),
0
,
3
)
binding
.
tvTittle
.
text
=
colorSpanner
(
appName
,
Color
.
parseColor
(
"#FD1010"
),
0
,
3
)
navController
.
popBackStack
()
navController
.
navigate
(
R
.
id
.
homeFragment
)
if
(
getNavCurrentFragment
()
!
is
HomeFragment
)
{
navController
.
popBackStack
()
navController
.
navigate
(
R
.
id
.
homeFragment
)
}
}
}
private
fun
changeRecentUI
()
{
private
fun
changeRecentUI
()
{
...
@@ -132,8 +139,12 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
...
@@ -132,8 +139,12 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
binding
.
tvRecent
.
isSelected
=
true
binding
.
tvRecent
.
isSelected
=
true
binding
.
tvTittle
.
text
=
resources
.
getString
(
R
.
string
.
recent
)
binding
.
tvTittle
.
text
=
resources
.
getString
(
R
.
string
.
recent
)
navController
.
popBackStack
()
navController
.
navigate
(
R
.
id
.
recentFragment
)
if
(
getNavCurrentFragment
()
!
is
RecentFragment
)
{
navController
.
popBackStack
()
navController
.
navigate
(
R
.
id
.
recentFragment
)
}
}
}
private
fun
changeSettingUI
()
{
private
fun
changeSettingUI
()
{
...
@@ -142,8 +153,11 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
...
@@ -142,8 +153,11 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
binding
.
tvSetting
.
isSelected
=
true
binding
.
tvSetting
.
isSelected
=
true
binding
.
tvTittle
.
text
=
resources
.
getString
(
R
.
string
.
settings
)
binding
.
tvTittle
.
text
=
resources
.
getString
(
R
.
string
.
settings
)
navController
.
popBackStack
()
if
(
getNavCurrentFragment
()
!
is
SettingFragment
)
{
navController
.
navigate
(
R
.
id
.
settingFragment
)
navController
.
popBackStack
()
navController
.
navigate
(
R
.
id
.
settingFragment
)
}
}
}
}
}
\ No newline at end of file
app/src/main/java/com/base/pdfoneread/ui/search/SearchActivity.kt
View file @
39eda934
package
com.base.pdfoneread.ui.search
package
com.base.pdfoneread.ui.search
import
android.graphics.Color
import
android.graphics.Color
import
android.view.View
import
android.view.inputmethod.EditorInfo
import
android.view.inputmethod.EditorInfo
import
androidx.activity.addCallback
import
androidx.activity.addCallback
import
androidx.core.view.updatePadding
import
androidx.core.view.updatePadding
import
androidx.fragment.app.Fragment
import
androidx.fragment.app.Fragment
import
androidx.lifecycle.ViewModelProvider
import
androidx.lifecycle.ViewModelProvider
import
androidx.lifecycle.lifecycleScope
import
androidx.viewpager2.adapter.FragmentStateAdapter
import
androidx.viewpager2.adapter.FragmentStateAdapter
import
androidx.viewpager2.widget.ViewPager2
import
androidx.viewpager2.widget.ViewPager2
import
com.angcyo.tablayout.delegate2.ViewPager2Delegate
import
com.angcyo.tablayout.delegate2.ViewPager2Delegate
...
@@ -17,7 +15,6 @@ import com.base.pdfoneread.databinding.ActivitySearchBinding
...
@@ -17,7 +15,6 @@ import com.base.pdfoneread.databinding.ActivitySearchBinding
import
com.base.pdfoneread.ui.BaseActivity
import
com.base.pdfoneread.ui.BaseActivity
import
com.base.pdfoneread.utils.BarUtils
import
com.base.pdfoneread.utils.BarUtils
import
com.base.pdfoneread.utils.LogEx
import
com.base.pdfoneread.utils.LogEx
import
java.io.File
class
SearchActivity
:
BaseActivity
<
ActivitySearchBinding
>()
{
class
SearchActivity
:
BaseActivity
<
ActivitySearchBinding
>()
{
...
@@ -46,6 +43,7 @@ class SearchActivity : BaseActivity<ActivitySearchBinding>() {
...
@@ -46,6 +43,7 @@ class SearchActivity : BaseActivity<ActivitySearchBinding>() {
private
val
fragments
by
lazy
{
private
val
fragments
by
lazy
{
mutableListOf
(
allPage
,
pdfPage
,
wordPage
,
excelPage
,
pptPage
)
mutableListOf
(
allPage
,
pdfPage
,
wordPage
,
excelPage
,
pptPage
)
}
}
var
currentPage
:
SearchPageFragment
?
=
allPage
override
fun
initView
()
{
override
fun
initView
()
{
BarUtils
.
setStatusBarLightMode
(
this
,
true
)
BarUtils
.
setStatusBarLightMode
(
this
,
true
)
...
@@ -66,8 +64,6 @@ class SearchActivity : BaseActivity<ActivitySearchBinding>() {
...
@@ -66,8 +64,6 @@ class SearchActivity : BaseActivity<ActivitySearchBinding>() {
}
}
false
false
}
}
searchDocument
()
}
}
private
var
pageAdapter
:
FragmentStateAdapter
?
=
null
private
var
pageAdapter
:
FragmentStateAdapter
?
=
null
...
@@ -83,6 +79,7 @@ class SearchActivity : BaseActivity<ActivitySearchBinding>() {
...
@@ -83,6 +79,7 @@ class SearchActivity : BaseActivity<ActivitySearchBinding>() {
}
}
binding
.
viewPager2
.
run
{
binding
.
viewPager2
.
run
{
offscreenPageLimit
=
5
isUserInputEnabled
=
true
isUserInputEnabled
=
true
//https://www.jianshu.com/p/f69bd30cf5b0
//https://www.jianshu.com/p/f69bd30cf5b0
//FragmentStateAdapter 这里必须传人fragment
//FragmentStateAdapter 这里必须传人fragment
...
@@ -97,6 +94,7 @@ class SearchActivity : BaseActivity<ActivitySearchBinding>() {
...
@@ -97,6 +94,7 @@ class SearchActivity : BaseActivity<ActivitySearchBinding>() {
}
}
override
fun
onPageSelected
(
position
:
Int
)
{
override
fun
onPageSelected
(
position
:
Int
)
{
currentPage
=
fragments
[
position
]
}
}
})
})
}
}
...
@@ -159,7 +157,8 @@ class SearchActivity : BaseActivity<ActivitySearchBinding>() {
...
@@ -159,7 +157,8 @@ class SearchActivity : BaseActivity<ActivitySearchBinding>() {
}
}
private
fun
searchDocument
()
{
private
fun
searchDocument
()
{
val
search
=
binding
.
edit
.
text
.
toString
()
currentPage
?.
searchContent
(
search
)
}
}
companion
object
{
companion
object
{
...
...
app/src/main/java/com/base/pdfoneread/ui/search/SearchPageFragment.kt
View file @
39eda934
...
@@ -16,18 +16,28 @@ import com.base.pdfoneread.bean.DocumentBean.Companion.TYPE_PPT
...
@@ -16,18 +16,28 @@ import com.base.pdfoneread.bean.DocumentBean.Companion.TYPE_PPT
import
com.base.pdfoneread.bean.DocumentBean.Companion.TYPE_WORD
import
com.base.pdfoneread.bean.DocumentBean.Companion.TYPE_WORD
import
com.base.pdfoneread.databinding.FragmentSearchPageBinding
import
com.base.pdfoneread.databinding.FragmentSearchPageBinding
import
com.base.pdfoneread.ui.document.DocumentAdapter
import
com.base.pdfoneread.ui.document.DocumentAdapter
import
com.base.pdfoneread.ui.document.GlobalExcelList
import
com.base.pdfoneread.ui.document.GlobalPdfList
import
com.base.pdfoneread.ui.document.GlobalPptList
import
com.base.pdfoneread.ui.document.GlobalWordList
import
com.base.pdfoneread.ui.document.getAllDocument
import
com.base.pdfoneread.ui.document.getAllDocument
import
com.base.pdfoneread.ui.document.getExcelDocument
import
com.base.pdfoneread.ui.document.getExcelDocument
import
com.base.pdfoneread.ui.document.getGlobalAllList
import
com.base.pdfoneread.ui.document.getPdfDocument
import
com.base.pdfoneread.ui.document.getPdfDocument
import
com.base.pdfoneread.ui.document.getPptDocument
import
com.base.pdfoneread.ui.document.getPptDocument
import
com.base.pdfoneread.ui.document.getRvAdList
import
com.base.pdfoneread.ui.document.getWordDocument
import
com.base.pdfoneread.ui.document.getWordDocument
import
com.base.pdfoneread.utils.LogEx
import
com.base.pdfoneread.utils.updateMediaStore
import
com.base.pdfoneread.utils.updateMediaStore
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.launch
import
kotlinx.coroutines.launch
import
java.io.File
import
java.util.Locale
class
SearchPageFragment
()
:
Fragment
()
{
class
SearchPageFragment
()
:
Fragment
()
{
private
val
TAG
=
"SearchPageFragment"
private
var
type
=
TYPE_PDF
private
var
type
=
TYPE_PDF
private
var
adapter
:
DocumentAdapter
?
=
null
private
var
adapter
:
DocumentAdapter
?
=
null
private
lateinit
var
binding
:
FragmentSearchPageBinding
private
lateinit
var
binding
:
FragmentSearchPageBinding
...
@@ -63,64 +73,110 @@ class SearchPageFragment() : Fragment() {
...
@@ -63,64 +73,110 @@ class SearchPageFragment() : Fragment() {
}
}
binding
.
rv
.
adapter
=
adapter
binding
.
rv
.
adapter
=
adapter
initData
()
binding
.
swipeRefreshLayout
.
setOnRefreshListener
{
initData
()
}
initPreData
()
}
private
fun
initPreData
()
{
val
list
=
when
(
type
)
{
TYPE_PDF
->
{
GlobalPdfList
}
TYPE_WORD
->
{
GlobalWordList
}
TYPE_EXCEL
->
{
GlobalExcelList
}
TYPE_PPT
->
{
GlobalPptList
}
else
->
{
getGlobalAllList
()
}
}
listRunMain
(
list
)
}
}
private
fun
initData
()
{
private
fun
initData
()
{
LogEx
.
logDebug
(
TAG
,
"initData start type=$type isResumed=$isResumed isDetached=$isDetached"
)
val
activity
=
requireActivity
()
as
SearchActivity
?
activity
?:
return
if
(
activity
.
currentPage
==
this
)
{
binding
.
swipeRefreshLayout
.
isRefreshing
=
true
}
lifecycleScope
.
launch
(
Dispatchers
.
IO
)
{
lifecycleScope
.
launch
(
Dispatchers
.
IO
)
{
requireContext
().
updateMediaStore
()
requireContext
().
updateMediaStore
()
val
list
:
List
<
DocumentBean
>
val
list
:
List
<
DocumentBean
>
=
when
(
type
)
{
when
(
type
)
{
TYPE_PDF
->
{
TYPE_PDF
->
{
list
=
getPdfDocument
(
requireContext
())
getPdfDocument
(
requireContext
())
}
}
TYPE_WORD
->
{
TYPE_WORD
->
{
list
=
getWordDocument
(
requireContext
())
getWordDocument
(
requireContext
())
}
}
TYPE_EXCEL
->
{
TYPE_EXCEL
->
{
list
=
getExcelDocument
(
requireContext
())
getExcelDocument
(
requireContext
())
}
}
TYPE_PPT
->
{
TYPE_PPT
->
{
list
=
getPptDocument
(
requireContext
())
getPptDocument
(
requireContext
())
}
}
else
->
{
else
->
{
list
=
getAllDocument
(
requireContext
())
getAllDocument
(
requireContext
())
}
}
}
}
l
aunch
(
Dispatchers
.
Main
)
{
l
istRunMain
(
list
)
if
(
list
.
isEmpty
())
{
}
binding
.
llEmpty
.
visibility
=
View
.
VISIBLE
}
adapter
?.
submitList
(
listOf
())
val
flag
=
AdmobHelper
.
isShowRvNativeAd
()
private
fun
listRunMain
(
list
:
List
<
DocumentBean
>)
{
if
(
flag
)
{
lifecycleScope
.
launch
(
Dispatchers
.
Main
)
{
binding
.
flAd
.
visibility
=
View
.
VISIBLE
if
(
list
.
isEmpty
())
{
AdmobNativeUtils
.
showNativeAd
(
requireActivity
(),
binding
.
flAd
,
R
.
layout
.
layout_admob_document
)
binding
.
llEmpty
.
visibility
=
View
.
VISIBLE
}
adapter
?.
submitList
(
listOf
())
}
else
{
val
flag
=
AdmobHelper
.
isShowRvNativeAd
()
binding
.
llEmpty
.
visibility
=
View
.
GONE
if
(
flag
)
{
binding
.
flAd
.
visibility
=
View
.
GON
E
binding
.
flAd
.
visibility
=
View
.
VISIBL
E
adapter
?.
submitList
(
getRvAdList
(
list
)
)
AdmobNativeUtils
.
showNativeAd
(
requireActivity
(),
binding
.
flAd
,
R
.
layout
.
layout_admob_document
)
}
}
}
else
{
binding
.
llEmpty
.
visibility
=
View
.
GONE
binding
.
flAd
.
visibility
=
View
.
GONE
adapter
?.
submitList
(
getRvAdList
(
list
))
}
LogEx
.
logDebug
(
TAG
,
"initData end type=$type isVisible=$isVisible"
)
if
(
isVisible
)
{
binding
.
swipeRefreshLayout
.
isRefreshing
=
false
}
}
}
}
}
}
private
fun
getRvAdList
(
list
:
List
<
DocumentBean
>):
List
<
DocumentBean
>
{
fun
searchContent
(
search
:
String
)
{
val
flag
=
AdmobHelper
.
isShowRvNativeAd
()
lifecycleScope
.
launch
(
Dispatchers
.
IO
)
{
if
(
flag
)
{
val
searchList
=
val
arrayList
=
arrayListOf
<
DocumentBean
>()
adapter
?.
items
?.
filter
{
arrayList
.
addAll
(
list
)
File
(
it
.
path
).
name
.
lowercase
(
Locale
.
ENGLISH
).
contains
(
search
.
lowercase
(
Locale
.
ENGLISH
))
arrayList
.
add
(
1
,
DocumentBean
().
apply
{
isAd
=
true
})
}
return
arrayList
launch
(
Dispatchers
.
Main
)
{
adapter
?.
submitList
(
searchList
)
}
}
}
return
list
}
}
}
}
\ No newline at end of file
app/src/main/res/layout/activity_document.xml
View file @
39eda934
...
@@ -189,6 +189,7 @@
...
@@ -189,6 +189,7 @@
android:id=
"@+id/card_tool"
android:id=
"@+id/card_tool"
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"80dp"
android:layout_height=
"80dp"
android:visibility=
"gone"
android:layout_marginHorizontal=
"30dp"
android:layout_marginHorizontal=
"30dp"
android:layout_marginBottom=
"50dp"
android:layout_marginBottom=
"50dp"
app:cardCornerRadius=
"25dp"
app:cardCornerRadius=
"25dp"
...
...
app/src/main/res/layout/activity_search.xml
View file @
39eda934
...
@@ -48,7 +48,7 @@
...
@@ -48,7 +48,7 @@
android:id=
"@+id/fl_tab"
android:id=
"@+id/fl_tab"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"
20
dp"
android:layout_marginTop=
"
8
dp"
android:background=
"@color/white"
android:background=
"@color/white"
app:layout_constraintTop_toBottomOf=
"@id/fl_fanhui"
>
app:layout_constraintTop_toBottomOf=
"@id/fl_fanhui"
>
...
@@ -135,7 +135,7 @@
...
@@ -135,7 +135,7 @@
android:id=
"@+id/viewPager2"
android:id=
"@+id/viewPager2"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"0dp"
android:layout_height=
"0dp"
android:layout_marginVertical=
"
1
8dp"
android:layout_marginVertical=
"8dp"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/fl_tab"
/>
app:layout_constraintTop_toBottomOf=
"@id/fl_tab"
/>
...
...
app/src/main/res/layout/fragment_search_page.xml
View file @
39eda934
...
@@ -15,13 +15,20 @@
...
@@ -15,13 +15,20 @@
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
/>
android:layout_height=
"wrap_content"
/>
<androidx.recyclerview.widget.RecyclerView
<androidx.swiperefreshlayout.widget.SwipeRefreshLayout
android:id=
"@+id/rv"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:id=
"@+id/swipeRefreshLayout"
android:layout_marginVertical=
"16dp"
android:layout_height=
"match_parent"
>
app:layoutManager=
"androidx.recyclerview.widget.LinearLayoutManager"
tools:listitem=
"@layout/item_document"
/>
<androidx.recyclerview.widget.RecyclerView
android:id=
"@+id/rv"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_marginVertical=
"16dp"
app:layoutManager=
"androidx.recyclerview.widget.LinearLayoutManager"
tools:listitem=
"@layout/item_document"
/>
</androidx.swiperefreshlayout.widget.SwipeRefreshLayout>
</LinearLayout>
</LinearLayout>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment