优化代码表,文本可复制!
This commit is contained in:
parent
a2c71a5e15
commit
913cc1a4d7
|
@ -178,4 +178,9 @@ dependencies {
|
||||||
它基于 CSS 的 Flexbox 布局模型,能够帮助开发者更容易地创建复杂的布局结构,并实现各种灵活的布局需求。*/
|
它基于 CSS 的 Flexbox 布局模型,能够帮助开发者更容易地创建复杂的布局结构,并实现各种灵活的布局需求。*/
|
||||||
implementation 'com.google.android.flexbox:flexbox:3.0.0'
|
implementation 'com.google.android.flexbox:flexbox:3.0.0'
|
||||||
|
|
||||||
|
// Android智能下拉刷新框架-SmartRefreshLayout
|
||||||
|
implementation 'io.github.scwang90:refresh-layout-kernel:2.1.0' //核心必须依赖
|
||||||
|
implementation 'io.github.scwang90:refresh-header-classics:2.1.0' //经典刷新头
|
||||||
|
implementation 'io.github.scwang90:refresh-footer-classics:2.1.0' //经典加载
|
||||||
|
|
||||||
}
|
}
|
|
@ -68,7 +68,7 @@ class CodeTableActivity : BaseActivity<ActivityCodeTableBinding>() {
|
||||||
}
|
}
|
||||||
false
|
false
|
||||||
}
|
}
|
||||||
viewBinding.back.setOnClickListener { finish() }
|
viewBinding.back.setOnClickListener { moveTaskToBack(true) }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -208,7 +208,8 @@ class CodeTableActivity : BaseActivity<ActivityCodeTableBinding>() {
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onBackPressed() {
|
override fun onBackPressed() {
|
||||||
finish()
|
//显示桌面
|
||||||
|
moveTaskToBack(true);
|
||||||
// ifNeedFinish()
|
// ifNeedFinish()
|
||||||
}
|
}
|
||||||
override fun getViewBindingObject(layoutInflater: LayoutInflater): ActivityCodeTableBinding {
|
override fun getViewBindingObject(layoutInflater: LayoutInflater): ActivityCodeTableBinding {
|
||||||
|
|
|
@ -17,6 +17,7 @@ import com.coldmint.rust.pro.databinding.FragmentRankingBinding
|
||||||
import com.coldmint.rust.pro.ui.StableLinearLayoutManager
|
import com.coldmint.rust.pro.ui.StableLinearLayoutManager
|
||||||
import me.zhanghai.android.fastscroll.FastScrollerBuilder
|
import me.zhanghai.android.fastscroll.FastScrollerBuilder
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 排行榜
|
* 排行榜
|
||||||
*/
|
*/
|
||||||
|
@ -30,7 +31,7 @@ class RankingFragment : BaseFragment<FragmentRankingBinding>() {
|
||||||
override fun whenViewCreated(inflater: LayoutInflater, savedInstanceState: Bundle?) {
|
override fun whenViewCreated(inflater: LayoutInflater, savedInstanceState: Bundle?) {
|
||||||
linearLayoutManager = StableLinearLayoutManager(requireContext())
|
linearLayoutManager = StableLinearLayoutManager(requireContext())
|
||||||
viewBinding.recyclerView.layoutManager = linearLayoutManager
|
viewBinding.recyclerView.layoutManager = linearLayoutManager
|
||||||
viewBinding.recyclerView.addOnScrollListener(object : RecyclerView.OnScrollListener() {
|
/* viewBinding.recyclerView.addOnScrollListener(object : RecyclerView.OnScrollListener() {
|
||||||
override fun onScrollStateChanged(recyclerView: RecyclerView, newState: Int) {
|
override fun onScrollStateChanged(recyclerView: RecyclerView, newState: Int) {
|
||||||
super.onScrollStateChanged(recyclerView, newState)
|
super.onScrollStateChanged(recyclerView, newState)
|
||||||
val layoutManager = viewBinding.recyclerView.layoutManager
|
val layoutManager = viewBinding.recyclerView.layoutManager
|
||||||
|
@ -43,11 +44,18 @@ class RankingFragment : BaseFragment<FragmentRankingBinding>() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})*/
|
||||||
viewBinding.swipeRefreshLayout.setOnRefreshListener {
|
viewBinding.refreshLayout.setOnRefreshListener {
|
||||||
|
it.finishRefresh(true)//传入false表示刷新失败
|
||||||
|
loadMods()
|
||||||
|
}
|
||||||
|
viewBinding.refreshLayout.setOnLoadMoreListener {
|
||||||
|
it.finishLoadMore(false) //传入false表示加载失败
|
||||||
|
}
|
||||||
|
/* viewBinding.swipeRefreshLayout.setOnRefreshListener {
|
||||||
loadMods()
|
loadMods()
|
||||||
viewBinding.swipeRefreshLayout.isRefreshing = false
|
viewBinding.swipeRefreshLayout.isRefreshing = false
|
||||||
}
|
}*/
|
||||||
viewBinding.downloadChip.setOnCheckedChangeListener { _, isChecked ->
|
viewBinding.downloadChip.setOnCheckedChangeListener { _, isChecked ->
|
||||||
if (isChecked) {
|
if (isChecked) {
|
||||||
sortMode = WebMod.SortMode.Download_Number
|
sortMode = WebMod.SortMode.Download_Number
|
||||||
|
@ -79,7 +87,7 @@ class RankingFragment : BaseFragment<FragmentRankingBinding>() {
|
||||||
private fun loadMods() {
|
private fun loadMods() {
|
||||||
viewBinding.progressBar.isVisible = true
|
viewBinding.progressBar.isVisible = true
|
||||||
viewBinding.textview.isVisible = false
|
viewBinding.textview.isVisible = false
|
||||||
viewBinding.swipeRefreshLayout.isVisible = false
|
// viewBinding.swipeRefreshLayout.isVisible = false
|
||||||
WebMod.instance.list(object : ApiCallBack<WebModListData> {
|
WebMod.instance.list(object : ApiCallBack<WebModListData> {
|
||||||
override fun onResponse(t: WebModListData) {
|
override fun onResponse(t: WebModListData) {
|
||||||
if (!isAdded) {
|
if (!isAdded) {
|
||||||
|
@ -90,15 +98,15 @@ class RankingFragment : BaseFragment<FragmentRankingBinding>() {
|
||||||
if (!list.isNullOrEmpty()) {
|
if (!list.isNullOrEmpty()) {
|
||||||
viewBinding.progressBar.isVisible = false
|
viewBinding.progressBar.isVisible = false
|
||||||
viewBinding.textview.isVisible = false
|
viewBinding.textview.isVisible = false
|
||||||
viewBinding.swipeRefreshLayout.isVisible = true
|
// viewBinding.swipeRefreshLayout.isVisible = true
|
||||||
val adapter = createAdapter(list)
|
val adapter = createAdapter(list)
|
||||||
viewBinding.recyclerView.adapter = adapter
|
viewBinding.recyclerView.adapter = adapter
|
||||||
linearLayoutManager?.scrollToPositionWithOffset(
|
linearLayoutManager?.scrollToPositionWithOffset(
|
||||||
lastPosition,
|
lastPosition,
|
||||||
lastOffset
|
lastOffset
|
||||||
)
|
)
|
||||||
FastScrollerBuilder(viewBinding.recyclerView).useMd2Style()
|
/* FastScrollerBuilder(viewBinding.recyclerView).useMd2Style()
|
||||||
.setPopupTextProvider(adapter).build()
|
.setPopupTextProvider(adapter).build()*/
|
||||||
} else {
|
} else {
|
||||||
showInfoToView(R.string.network_error)
|
showInfoToView(R.string.network_error)
|
||||||
}
|
}
|
||||||
|
@ -111,7 +119,7 @@ class RankingFragment : BaseFragment<FragmentRankingBinding>() {
|
||||||
showInfoToView(R.string.network_error)
|
showInfoToView(R.string.network_error)
|
||||||
}
|
}
|
||||||
|
|
||||||
}, sortMode = sortMode, limit = "100")
|
}, sortMode = sortMode, limit = "10", sum = "0")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -148,7 +156,7 @@ class RankingFragment : BaseFragment<FragmentRankingBinding>() {
|
||||||
*/
|
*/
|
||||||
fun showInfoToView(textRes: Int? = null, text: String? = null) {
|
fun showInfoToView(textRes: Int? = null, text: String? = null) {
|
||||||
viewBinding.progressBar.isVisible = false
|
viewBinding.progressBar.isVisible = false
|
||||||
viewBinding.swipeRefreshLayout.isVisible = false
|
// viewBinding.swipeRefreshLayout.isVisible = false
|
||||||
viewBinding.textview.isVisible = true
|
viewBinding.textview.isVisible = true
|
||||||
if (textRes == null) {
|
if (textRes == null) {
|
||||||
viewBinding.textview.text = textRes
|
viewBinding.textview.text = textRes
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<RelativeLayout 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"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
|
@ -77,8 +78,8 @@
|
||||||
android:text="@string/agreement_agreed" />
|
android:text="@string/agreement_agreed" />
|
||||||
|
|
||||||
|
|
||||||
<RelativeLayout
|
<LinearLayout
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_below="@id/checkbox"
|
android:layout_below="@id/checkbox"
|
||||||
android:layout_marginTop="8dp">
|
android:layout_marginTop="8dp">
|
||||||
|
@ -93,20 +94,20 @@
|
||||||
<Button
|
<Button
|
||||||
android:id="@+id/changeServerView"
|
android:id="@+id/changeServerView"
|
||||||
style="@style/Widget.Material3.Button.TextButton"
|
style="@style/Widget.Material3.Button.TextButton"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginStart="8dp"
|
android:layout_weight="1"
|
||||||
android:layout_toEndOf="@id/changePasswordView"
|
android:layout_marginHorizontal="6dp"
|
||||||
android:text="@string/changing_the_server"
|
android:text="@string/changing_the_server"
|
||||||
android:visibility="gone" />
|
android:visibility="gone"
|
||||||
|
tools:visibility="visible" />
|
||||||
|
|
||||||
<Button
|
<Button
|
||||||
android:id="@+id/registerView"
|
android:id="@+id/registerView"
|
||||||
style="@style/Widget.Material3.Button.TextButton"
|
style="@style/Widget.Material3.Button.TextButton"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignParentEnd="true"
|
|
||||||
android:text="@string/register" />
|
android:text="@string/register" />
|
||||||
</RelativeLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
|
@ -1,16 +1,14 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<LinearLayout 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"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
|
android:orientation="vertical"
|
||||||
android:layout_height="wrap_content">
|
android:layout_height="wrap_content">
|
||||||
<!-- Drag handle for accessibility -->
|
<!-- Drag handle for accessibility -->
|
||||||
<com.google.android.material.bottomsheet.BottomSheetDragHandleView
|
<com.google.android.material.bottomsheet.BottomSheetDragHandleView
|
||||||
android:id="@+id/drag_handle"
|
android:id="@+id/drag_handle"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"/>
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintTop_toTopOf="parent" />
|
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:id="@+id/linearLayout4"
|
android:id="@+id/linearLayout4"
|
||||||
|
@ -18,11 +16,7 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginHorizontal="9dp"
|
android:layout_marginHorizontal="9dp"
|
||||||
android:layout_marginBottom="26dp"
|
android:layout_marginBottom="26dp"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical">
|
||||||
app:layout_constraintBottom_toBottomOf="parent"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintTop_toBottomOf="@+id/drag_handle">
|
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/title"
|
android:id="@+id/title"
|
||||||
|
@ -31,12 +25,20 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="Hello World!" />
|
android:text="Hello World!" />
|
||||||
|
|
||||||
<TextView
|
<androidx.core.widget.NestedScrollView
|
||||||
android:id="@+id/message"
|
|
||||||
style="@style/TextAppearance.Material3.BodyLarge"
|
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginTop="6dp"
|
android:overScrollMode="never"
|
||||||
android:text="Hello World!" />
|
android:fadingEdge="vertical"
|
||||||
|
android:fadingEdgeLength="30dp"
|
||||||
|
android:layout_marginTop="6dp">
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/message"
|
||||||
|
style="@style/TextAppearance.Material3.BodyLarge"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textIsSelectable="true"
|
||||||
|
android:text="Hello World!" />
|
||||||
|
</androidx.core.widget.NestedScrollView>
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</LinearLayout>
|
|
@ -74,16 +74,24 @@
|
||||||
|
|
||||||
</com.google.android.material.chip.ChipGroup>
|
</com.google.android.material.chip.ChipGroup>
|
||||||
</HorizontalScrollView>
|
</HorizontalScrollView>
|
||||||
<androidx.swiperefreshlayout.widget.SwipeRefreshLayout
|
<com.scwang.smart.refresh.layout.SmartRefreshLayout
|
||||||
android:id="@+id/swipeRefreshLayout"
|
android:id="@+id/refreshLayout"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:visibility="gone">
|
app:srlEnablePreviewInEditMode="false">
|
||||||
|
<!--srlEnablePreviewInEditMode 可以开启和关闭预览功能-->
|
||||||
|
<com.scwang.smart.refresh.header.ClassicsHeader
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"/>
|
||||||
<androidx.recyclerview.widget.RecyclerView
|
<androidx.recyclerview.widget.RecyclerView
|
||||||
android:id="@+id/recyclerView"
|
android:id="@+id/recyclerView"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent" />
|
android:layout_height="match_parent"
|
||||||
</androidx.swiperefreshlayout.widget.SwipeRefreshLayout>
|
android:overScrollMode="never"
|
||||||
|
android:background="#fff" />
|
||||||
|
<com.scwang.smart.refresh.footer.ClassicsFooter
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"/>
|
||||||
|
</com.scwang.smart.refresh.layout.SmartRefreshLayout>
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
|
@ -831,7 +831,8 @@ class WebMod private constructor() {
|
||||||
apiCallBack: ApiCallBack<WebModListData>,
|
apiCallBack: ApiCallBack<WebModListData>,
|
||||||
tag: String? = null,
|
tag: String? = null,
|
||||||
sortMode: SortMode? = null,
|
sortMode: SortMode? = null,
|
||||||
limit: String? = null
|
limit: String? = null,
|
||||||
|
sum : String?=null
|
||||||
) {
|
) {
|
||||||
val okHttpClient = ServerConfiguration.initOkHttpClient()
|
val okHttpClient = ServerConfiguration.initOkHttpClient()
|
||||||
val requestBodyBuilder: FormBody.Builder =
|
val requestBodyBuilder: FormBody.Builder =
|
||||||
|
|
Loading…
Reference in New Issue
Block a user