Tag: android viewpager

SwipeRefreshLayout会干扰ViewPager中的ScrollView

我有一个ViewPager周围的SwipeRefreshLayout。 由ViewPager加载的片段包含ScrollViews。 当我向下滚动它可以正常工作,但是当我向上滚动时,SwipeRefreshLayout激活而不让ScrollView先滚动。 我如何确保ScrollView具有优先权? 当SwipeRefreshLayout在ScrollView之外的独立片段中工作的很好,但是我需要它在ViewPager周围的活动本身。 以下是相关的布局: 活动: 由ViewPager加载的片段(有5个选项卡,每个都有其中之一): 如果你需要更多的信息,这里是GitHub上的回购: https : //github.com/sargunster/purdue-dining-courts-android

Kotlin – 如何在ViewPager中添加OnPageChangeListener

我是新的kotlin,我怎样才能在ViewPager中添加OnPageChangeListener 。 viewPager?.addOnPageChangeListener // Now how can I add listener to it.

如何捕捉RecyclerView项目,以便每个X项目将被视为一个单元来捕捉?

背景 可以使用以下方法将RecyclerView锁定到其中心: LinearSnapHelper().attachToRecyclerView(recyclerView) 例: MainActivity.kt class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val inflater = LayoutInflater.from(this) recyclerView.adapter = object : RecyclerView.Adapter() { override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) { val textView = holder.itemView as TextView textView.setBackgroundColor(if (position % 2 == 0) 0xffff0000.toInt() else 0xff00ff00.toInt()) textView.text = position.toString() } override fun […]

如何正确更新ViewPager的最后一个片段,当点击标签?

问题描述: 我有一个ViewPager有四个碎片, 第一个和最后一个对他们有一个RecyclerView; 当我滚动ViewPager时,一切正常 – 这意味着,所有内容按预期加载; 如果我点击最后/第一个选项卡(其中包含RecyclerViews,并由三个片段分隔),RecyclerView内容不显示在屏幕上 – 所有其他UI组件,如FloatingActionButtons; 我环顾四周,但与此主题相关的所有其他问题似乎只解决了滚动的问题,我无法find任何与特定点击标签相关的任何内容。 PS:代码写在Kotlin 码 从一个活动调用,以封装与标签管理器相关的代码: class TabManager { companion object { val INVALID_POSITION_LABEL = “Invalid Position” } private var mActivity: AppCompatActivity? = null private var mViewPagerTab: SmartTabLayout? = null private var mViewPager: ViewPager? = null // PUBLIC INTERFACE ============================================================================ fun initViewPager(activity: AppCompatActivity) { mActivity = activity mViewPager […]

为什么在更改ViewPager的padding和pagemargin之前,先滚动ViewPager?

我希望能够在两种不同的状态之间切换我的viewpager。 一个片段占据整个屏幕的状态,另一个状态显示片段两侧的预览。 以下是所需的效果: https : //im2.ezgif.com/tmp/ezgif-2-d5afc38aa7.gif 请注意,gif仅适用于viewpager中的第一项。 观看在尝试切换状态之前滚动到viewpager中的另一个项目时会发生什么情况: https : //im2.ezgif.com/tmp/ezgif-2-bf17757173.gif正如您所看到的,我在标有“2”的项目上并在第二个状态“缩小”到某个不正确的点。 以下是我的代码(在Kotlin中): fun setupListeners() { btnTest.setOnClickListener { TransitionManager.beginDelayedTransition(binding.viewPager) if(stateTwo) { resetViewPagerStyling() } else { setViewPagerStateTwo() } stateTwo = !stateTwo } } fun setViewPagerInStateTwo() { // Setup view pager to show siblings viewPager.clipToPadding = false // Setup margins to show pages to the side viewPager.setPadding(100, 100, […]

Android graphview和viewpager冲突

我有Android图形视图和查看传呼机的麻烦。 当我设置isScalable =真正的新页面scrols而不是图形。 我想提供图形滚动和传呼机滚动在一起。 我必须在Bachelour的文凭课程中使用它(对不起英语不好) 码 override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) val args = arguments val date = args!!.getString(“DATE”).toDate() LoadData().execute(date) val sdf = DateAsXAxisLabelFormatter(context, SimpleDateFormat(“HH:mm”)) temperature_graph!!.gridLabelRenderer.labelFormatter = sdf temperature_graph!!.setOnClickListener { } PostExectute任务中的代码 override fun onPostExecute(result: List?) { super.onPostExecute(result) result!!.let { var list: MutableList = ArrayList() val temp_gragh = view!!.findViewById(R.id.temperature_graph) result.mapTo(list) { […]

在Kotlin中禁用查看Viewrger的View Pagerwipe

我是Kotlin的新手,我在查看分页器,我已经设置了分页适配器。 一切工作正常,但当我试图阻止我在Kotlin的浏览器分页刷卡,并找不到任何方法在Kotlin这样做。 我试图find解决方案,但没有运气。 虽然有很多在Java中,但不是为Kotlin。 我已经使用Java做了这个 viewPager.setPagingEnabled(false); 但每当我在Kotlin尝试这个结果都是错误的。 任何帮助将不胜感激。

Android ViewPager – 如何强制删除所有项目?

我正在编写一个Android应用程序,它广泛使用包含高分辨率图像的ViewPagers。 我正在扩展PagerAdapter并在适当时手动创建和销毁项目。 它工作正常,直到这个片段被放置在该堆栈上。 我想将ViewPagers中的片段放在堆栈上的时候从内存中删除所有的图片,但是我找不到方法。 我尝试从适配器使用的列表中删除所有的支持数据,然后调用.notifyDataSetChanged(),但是这不经过,并为每个页面调用PagerAdapter.destroyItem(),我希望。 我也尝试使用FragmentStatePagerAdapter,但是这也似乎没有清除应用程序使用过程中的任何内存。 我怎样才能强制一个PagerAdapter在呼叫器的所有项目上调用destroyItem()? 这是我包含ViewPager的View的代码: class ContentStrip : LinearLayout { var title : WeakReference<TextView>? = null var titleString: String = "" lateinit var pager : WeakReference<MyViewPager> var data:ContentCollection? = null //[…] other view methods //Called from parent fragment's onDestroy fun clearMemory() { if (data == null) return var i = -1 var […]

如何防止在Java之前加载碎片的创建?

嘿,我试图做这个教程,现在我得到的问题,当我启动应用程序崩溃,因为我的片段的参数为空。 我发现一个答案,我必须从我的content_main.xml中删除片段,但是当我这样做的应用程序启动,但行为怪异,我不认为这是正确的答案的问题。 所以我的MainActivityFragment的onCreate()在java代码之前调用,所以我得到了这样的问题: override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) page = this.arguments.getInt("someInt", 0) title = this.arguments.getString("someTitle") } 什么是正确的解决方案? 我的代码在github上

在片段ViewPager不工作的第二次

我正在使用一个FrameLayout来显示一个包含ViewPager的片段。 有时候我需要换一个片段。 一切工作正常,直到我想回到包含ViewPager的片段。 这是我正在使用的代码: 包含ViewPager的片段: override fun onCreateView(inflater: LayoutInflater?, container: ViewGroup?, savedInstanceState: Bundle?): View? { val view : View = inflater!!.inflate(R.layout.main_quotes, null) val vpQuotes = view.findViewById<CustomViewPager>(R.id.vpQuotes) val vpAdapter = ViewPagerAdapter(activity.supportFragmentManager) vpQuotes.adapter = vpAdapter val vpPageChangeListener : ViewPager.OnPageChangeListener = object : ViewPager.OnPageChangeListener { override fun onPageScrollStateChanged(state: Int) { } override fun onPageScrolled(position: Int, positionOffset: Float, positionOffsetPixels: […]