[Modify]ViewPager改为ViewPager2适配阿拉伯语

This commit is contained in:
wushaocheng
2023-06-02 18:59:34 +08:00
parent f2995f9683
commit d5fe1a6b22
7 changed files with 24 additions and 33 deletions

View File

@@ -3,10 +3,11 @@ package com.yizhuan.erban.home.fragment
import android.widget.LinearLayout
import android.widget.TextView
import androidx.fragment.app.Fragment
import androidx.viewpager.widget.ViewPager.OnPageChangeListener
import androidx.viewpager2.widget.ViewPager2
import com.netease.nimlib.sdk.NIMClient
import com.netease.nimlib.sdk.msg.MsgService
import com.yizhuan.erban.R
import com.yizhuan.erban.avroom.adapter.CommonVPAdapter
import com.yizhuan.erban.base.BaseViewBindingFragment
import com.yizhuan.erban.common.widget.dialog.DialogManager.AbsOkDialogListener
import com.yizhuan.erban.databinding.FragmentContactListBinding
@@ -15,7 +16,6 @@ import com.yizhuan.erban.ui.im.friend.FriendListFragment
import com.yizhuan.erban.ui.im.recent.RecentListFragment
import com.yizhuan.erban.ui.relation.FansListFragment
import com.yizhuan.erban.ui.user.adapter.UserInfoIndicatorAdapter
import com.yizhuan.erban.ui.user.adapter.UserInfoPagerAdapter
import com.yizhuan.erban.ui.widget.magicindicator.ViewPagerHelper
import com.yizhuan.erban.ui.widget.magicindicator.buildins.commonnavigator.CommonNavigator
import com.yizhuan.xchat_android_core.Constants
@@ -38,8 +38,6 @@ class ContactsListFragment : BaseViewBindingFragment<FragmentContactListBinding>
}
}
private var pagerAdapter: UserInfoPagerAdapter? = null
override fun init() {
//标记已读消息
binding.ivContactTrash.setOnClickListener {
@@ -66,7 +64,6 @@ class ContactsListFragment : BaseViewBindingFragment<FragmentContactListBinding>
fragmentList.add(FriendListFragment.newInstance(false, 0))
fragmentList.add(AttentionFragment.newInstance(Constants.FAN_NO_MAIN_PAGE_TYPE))
fragmentList.add(FansListFragment.newInstance(Constants.FAN_NO_MAIN_PAGE_TYPE))
pagerAdapter = UserInfoPagerAdapter(childFragmentManager, fragmentList)
val tagList: MutableList<String> = ArrayList(4)
tagList.add(getString(R.string.message))
tagList.add(getString(R.string.layout_fragment_contact_list_02))
@@ -82,21 +79,12 @@ class ContactsListFragment : BaseViewBindingFragment<FragmentContactListBinding>
binding.magicIndicator.navigator = commonNavigator
commonNavigator.titleContainer.showDividers = LinearLayout.SHOW_DIVIDER_MIDDLE
binding.viewPager.offscreenPageLimit = 4
binding.viewPager.adapter = pagerAdapter
binding.viewPager.adapter = CommonVPAdapter(childFragmentManager, lifecycle, fragmentList)
ViewPagerHelper.bind(binding.magicIndicator, binding.viewPager)
binding.viewPager.addOnPageChangeListener(object : OnPageChangeListener {
override fun onPageScrolled(
position: Int,
positionOffset: Float,
positionOffsetPixels: Int
) {
}
binding.viewPager.registerOnPageChangeCallback(object : ViewPager2.OnPageChangeCallback() {
override fun onPageSelected(position: Int) {
binding.viewPager.requestLayout()
}
override fun onPageScrollStateChanged(state: Int) {}
})
}

View File

@@ -45,7 +45,7 @@
</LinearLayout>
<androidx.viewpager.widget.ViewPager
<androidx.viewpager2.widget.ViewPager2
android:id="@+id/view_pager"
android:layout_width="match_parent"
android:layout_height="0dp"

View File

@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<layout 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">
<data>
@@ -38,27 +39,26 @@
android:id="@+id/tv_room_rank_half_hour_tab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawableBottom="@drawable/shape_room_rank_tab_tag_normal"
android:drawablePadding="6dp"
android:textColor="@color/white_transparent_50"
android:textSize="14dp"
android:textSize="@dimen/sp_14"
android:textStyle="bold"
android:text="@string/room_rank_half_hour"
android:onClick="@{click}" />
android:onClick="@{click}"
app:drawableBottomCompat="@drawable/shape_room_rank_tab_tag_normal" />
<TextView
android:id="@+id/tv_room_rank_in_room_tab"
android:text="@string/room_rank_in_room"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawableBottom="@drawable/shape_room_rank_tab_tag_selected"
android:drawablePadding="6dp"
android:layout_marginStart="26dp"
android:textColor="@color/white"
android:textSize="18dp"
android:textSize="@dimen/sp_18"
android:textStyle="bold"
android:onClick="@{click}"
/>
app:drawableBottomCompat="@drawable/shape_room_rank_tab_tag_selected" />
</LinearLayout>
@@ -68,7 +68,6 @@
android:layout_width="match_parent"
android:layout_marginStart="15dp"
android:layout_marginTop="15dp"
android:layout_centerVertical="true"
android:layout_marginEnd="15dp"
android:layout_height="34dp"/>

View File

@@ -13,15 +13,15 @@ import android.widget.LinearLayout;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.viewpager.widget.ViewPager;
import androidx.viewpager2.widget.ViewPager2;
import com.yizhuan.erban.R;
import com.yizhuan.erban.avroom.adapter.CommonVPAdapter;
import com.yizhuan.erban.base.BaseFragment;
import com.yizhuan.erban.common.widget.DragLayout;
import com.yizhuan.erban.community.publish.view.PublishActivity;
import com.yizhuan.erban.home.activity.CommunityNoticeAct;
import com.yizhuan.erban.home.adapter.TopMagicIndicatorAdapter;
import com.yizhuan.erban.ui.user.adapter.UserInfoPagerAdapter;
import com.yizhuan.erban.ui.widget.magicindicator.MagicIndicator;
import com.yizhuan.erban.ui.widget.magicindicator.ViewPagerHelper;
import com.yizhuan.erban.ui.widget.magicindicator.buildins.commonnavigator.CommonNavigator;
@@ -57,7 +57,7 @@ public class SquareFragment extends BaseFragment implements TopMagicIndicatorAda
public static final int TAB_TYPE_NEW = 2;
private MagicIndicator magicIndicator;
private ViewPager viewPager;
private ViewPager2 viewPager;
private DragLayout ivSquarePublish;
private FrameLayout flContactList;
private View tvCommunityUnread;
@@ -101,8 +101,7 @@ public class SquareFragment extends BaseFragment implements TopMagicIndicatorAda
getUnReadCount();
//init viewpager
viewPager.setAdapter(new UserInfoPagerAdapter(getChildFragmentManager(), fragmentList));
viewPager.setOffscreenPageLimit(3);
viewPager.setAdapter(new CommonVPAdapter(getChildFragmentManager(), getLifecycle(), fragmentList));
CommonNavigator commonNavigator = new CommonNavigator(getContext());
TopMagicIndicatorAdapter magicIndicatorAdapter = new TopMagicIndicatorAdapter(getContext(), tagList);

View File

@@ -54,7 +54,7 @@
</FrameLayout>
<androidx.viewpager.widget.ViewPager
<androidx.viewpager2.widget.ViewPager2
android:id="@+id/view_pager"
android:layout_width="match_parent"
android:layout_height="0dp"

View File

@@ -3,8 +3,8 @@
android:id="@+id/refresh_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:focusable="true"
android:background="@color/white"
android:focusable="true"
android:focusableInTouchMode="true">
<com.yizhuan.erban.common.widget.StatusLayout
@@ -18,8 +18,8 @@
android:layout_height="match_parent"
android:layout_marginStart="15dp"
android:layout_marginEnd="15dp"
android:clipToPadding="false"
/>
android:clipToPadding="false" />
</com.yizhuan.erban.common.widget.StatusLayout>

View File

@@ -18,6 +18,11 @@ import io.reactivex.functions.BiConsumer;
public class MiniWorldCategoryPresenter extends BaseMvpPresenter<IMiniWorldCategoryView> {
public static final int PAGE_SIZE = 20;
/**
* 获取话题
* @param miniWorldCategoryId
* @param page
*/
@SuppressLint("CheckResult")
public void getMiniWorldList(String miniWorldCategoryId, int page) {
MiniWorldModel.getInstance().getCategoryMiniWorldList(miniWorldCategoryId, page, PAGE_SIZE)