fix: 消息角标位置异常
This commit is contained in:
parent
38214c5755
commit
8501277e06
|
|
@ -46,7 +46,7 @@ import com.huanchengfly.tieba.post.services.NotifyJobService
|
||||||
import com.huanchengfly.tieba.post.utils.*
|
import com.huanchengfly.tieba.post.utils.*
|
||||||
import com.huanchengfly.tieba.post.widgets.MyViewPager
|
import com.huanchengfly.tieba.post.widgets.MyViewPager
|
||||||
|
|
||||||
open class MainActivity : BaseActivity(), BottomNavigationView.OnNavigationItemSelectedListener, OnNavigationItemReselectedListener {
|
class MainActivity : BaseActivity(), BottomNavigationView.OnNavigationItemSelectedListener, OnNavigationItemReselectedListener {
|
||||||
var mAdapter: ViewPagerAdapter = ViewPagerAdapter(supportFragmentManager)
|
var mAdapter: ViewPagerAdapter = ViewPagerAdapter(supportFragmentManager)
|
||||||
|
|
||||||
@BindView(R.id.mViewPager)
|
@BindView(R.id.mViewPager)
|
||||||
|
|
@ -58,11 +58,16 @@ open class MainActivity : BaseActivity(), BottomNavigationView.OnNavigationItemS
|
||||||
|
|
||||||
private var lastTime: Long = 0
|
private var lastTime: Long = 0
|
||||||
private val navigationHelper: NavigationHelper = NavigationHelper.newInstance(this)
|
private val navigationHelper: NavigationHelper = NavigationHelper.newInstance(this)
|
||||||
private var hideExplore = false
|
|
||||||
private var badgeTextView: TextView? = null
|
private var badgeTextView: TextView? = null
|
||||||
private val newMessageReceiver: BroadcastReceiver = NewMessageReceiver()
|
private val newMessageReceiver: BroadcastReceiver = NewMessageReceiver()
|
||||||
private val accountSwitchReceiver: BroadcastReceiver = AccountSwitchReceiver()
|
private val accountSwitchReceiver: BroadcastReceiver = AccountSwitchReceiver()
|
||||||
|
|
||||||
|
private val hideExplore
|
||||||
|
get() = appPreferences.hideExplore
|
||||||
|
|
||||||
|
private val msgNavPosition
|
||||||
|
get() = if (hideExplore) 1 else 2
|
||||||
|
|
||||||
public override fun onResume() {
|
public override fun onResume() {
|
||||||
val reason = ThemeUtil.getSharedPreferences(this).getString(ThemeUtil.SP_SWITCH_REASON, null)
|
val reason = ThemeUtil.getSharedPreferences(this).getString(ThemeUtil.SP_SWITCH_REASON, null)
|
||||||
val followSystemNight = appPreferences.followSystemNight
|
val followSystemNight = appPreferences.followSystemNight
|
||||||
|
|
@ -104,11 +109,11 @@ open class MainActivity : BaseActivity(), BottomNavigationView.OnNavigationItemS
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
R.id.navbar_msg -> {
|
R.id.navbar_msg -> {
|
||||||
mViewPager.setCurrentItem(if (hideExplore) 1 else 2, false)
|
mViewPager.setCurrentItem(msgNavPosition, false)
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
R.id.navbar_user -> {
|
R.id.navbar_user -> {
|
||||||
mViewPager.setCurrentItem(if (hideExplore) 2 else 3, false)
|
mViewPager.setCurrentItem(msgNavPosition + 1, false)
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -120,7 +125,7 @@ open class MainActivity : BaseActivity(), BottomNavigationView.OnNavigationItemS
|
||||||
}
|
}
|
||||||
|
|
||||||
protected fun initView() {
|
protected fun initView() {
|
||||||
val hideExploreItemView = menuView!!.getChildAt(if (hideExplore) 1 else 2) as BottomNavigationItemView
|
val hideExploreItemView = menuView!!.getChildAt(msgNavPosition) as BottomNavigationItemView
|
||||||
val badge = layoutInflater.inflate(R.layout.layout_badge, hideExploreItemView, true)
|
val badge = layoutInflater.inflate(R.layout.layout_badge, hideExploreItemView, true)
|
||||||
badgeTextView = badge.findViewById(R.id.tv_msg_count)
|
badgeTextView = badge.findViewById(R.id.tv_msg_count)
|
||||||
if (hideExplore) {
|
if (hideExplore) {
|
||||||
|
|
@ -146,9 +151,8 @@ open class MainActivity : BaseActivity(), BottomNavigationView.OnNavigationItemS
|
||||||
|
|
||||||
@SuppressLint("RestrictedApi")
|
@SuppressLint("RestrictedApi")
|
||||||
override fun onPageSelected(position: Int) {
|
override fun onPageSelected(position: Int) {
|
||||||
val baseFragment = mAdapter.getItem(position)
|
|
||||||
mBottomNavigationView.menu.getItem(position).isChecked = true
|
mBottomNavigationView.menu.getItem(position).isChecked = true
|
||||||
if (position == (if (hideExplore) 1 else 2)) {
|
if (position == msgNavPosition) {
|
||||||
badgeTextView!!.visibility = View.GONE
|
badgeTextView!!.visibility = View.GONE
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -174,7 +178,6 @@ open class MainActivity : BaseActivity(), BottomNavigationView.OnNavigationItemS
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
setSwipeBackEnable(false)
|
setSwipeBackEnable(false)
|
||||||
ThemeUtil.setTranslucentThemeBackground(findViewById(R.id.background))
|
ThemeUtil.setTranslucentThemeBackground(findViewById(R.id.background))
|
||||||
hideExplore = appPreferences.hideExplore
|
|
||||||
findView()
|
findView()
|
||||||
initView()
|
initView()
|
||||||
initListener()
|
initListener()
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue