草庐IT

回收站

全部标签

android - 在 ScrollView 中回收 View

我有一个应用程序可以显示channel列表的电视指南。我的用户界面由许多显示电视节目的不同宽度的自定义View组成,所有这些自定义View都被添加到一个水平ScrollView中,该水平ScrollView被添加到一个ScrollView中,因此我的View可以在左右和顶部的2维中滚动-下。一切都很好,直到我添加了很多View并且它开始变慢很多。所以我需要一种方法来回收View,就像listiew在ScrollView中所做的那样,也许有一个定制的ScrollView可以做到这一点,或者有人知道如何做到这一点,奇怪的是ScrollView没有像gridview和listview这样的适

android - 为什么 Android 会在我的 SpinnerAdapter 中回收错误的 View 类型?

我正在尝试制作一个带有分隔符的ActionBar微调器。我实现了一个SpinnerAdapter,它有2个项目View类型(感谢getViewTypeCount)。问题是我从其他类型发送了一些convertViews。这是我的SpinnerAdapter:publicabstractclassSeparatorSpinnerAdapterimplementsSpinnerAdapter{ContextmContext;ListmData;intmSeparatorLayoutResId,mActionBarItemLayoutResId,mDropDownItemLayoutResId

android - 如果 View 计数较小,RecyclerView 不会回收 View

我一直在处理RecyclerView中的一个奇怪行为,如果适配器中的View计数很小,在我的大小为5的情况下,View不会被回收,并且当View回滚时不会调用onBindViewHolder向屏幕。例如,如果我将大小增加到10个View,则回收开始工作并且每次View进入屏幕时都会调用onBindViewHolder。XML回收器View初始化LinearLayoutManagerllm=newLinearLayoutManager(getActivity());llm.setOrientation(LinearLayoutManager.VERTICAL);eventsList.se

android - 在 ListView 中回收 View ,值得吗?

当覆盖androidlistview上的baseadapter时,您必须实现此方法publicViewgetView(intposition,ViewconvertView,ViewGroupparent)。convertview是先前在滚动时从列表中推出的View,提供它是为了让您可以重用该View而不是创建新View。我的问题是,真的有必要重用View吗?如果只更改一部分数据,我可以理解重用它。但是创建View的开销真的那么重要吗?我看过的每一个关于使用ListView的教程都告诉你要回收View,即使是像TextView这样的简单View也是如此。我想我的问题是为什么谷歌决定将此

android - 在回收站 View 中只选择一个单选按钮

我有一个recyclerview,其中每个项目都有3个单选按钮分组在一个单选组中。现在,用户只能在recyclerview中为每个项目选择一个单选按钮。但我希望用户在整个回收View中只选择一个单选按钮。如何实现?这是目前的样子。我想让在整个回收站View中只检查1个单选按钮成为可能。如果选中第一项中的第一个单选按钮,然后用户单击第二项中的第二个单选按钮,则应取消选中第一项中的第一个单选按钮。 最佳答案 这是另一种方法。这比我之前的回答更优雅。但我保留了两者,因为之前的答案提供了更大的灵active。privateRadioButt

具有回收 View 和详细信息 View 的 fragment 之间的 Android 共享元素转换

我有2个fragment:fragment1包含recyclerview,fragment2包含所选项目的详细View。这两个fragment之间有一个共享元素imageview。从fragment1过渡到fragment2时,我想看到标准的共享元素过渡效果,但它似乎不适用于recyclerview。因为如果我在第一个fragment中使用另一个单独的View而不是recyclerview,它会显示正确的过渡。请注意,我已将基于位置的唯一转换名称分配给recyclerview项目图像。代码如下:我的Activity.javapublicclassMyActivityextendsAct

android - 为什么要回收 TypedArray?

Thisanswer告诉我调用recycle()TypedArray的方法允许它被垃圾收集。我的问题是为什么TypedArray特别需要一种方法来对其进行垃圾回收?为什么它不能像普通对象一样等待被垃圾回收? 最佳答案 这是缓存目的所必需的。当您调用recycle时,这意味着该对象可以从此时开始重用。内部TypedArray包含很少的数组,因此为了不在每次使用TypedArray时分配内存,它被缓存在Resources类中作为静态字段。可以看TypedArray.recycle()方法代码:/***Givebackapreviousl

android - 实现滑动以刷新布局后,回收站 View 无法正确滚动

在实现滑动刷新View之前,回收器View运行平稳,但每当我尝试向下滚动回收器View时,滑动刷新会干扰并阻碍滚动运动。这是问题的截图:(请注意,向下滚动回收器View时会出现刷新布局的滑动)这是我的布局fragment:下面是我的fragment的代码:packagecom.packrboy.fragments;importandroid.os.Bundle;importandroid.support.v4.app.Fragment;importandroid.support.v4.widget.SwipeRefreshLayout;importandroid.support.v7.

android - 回收位图异常

我遇到了这个异常:异常:java.lang.IllegalStateException:无法复制回收位图我的代码是:intwidth=bitmap.getWidth();intheight=bitmap.getHeight();intnewWidth;intnewHeight;if(width>=height){newWidth=Math.min(width,1024);newHeight=(int)(((float)newWidth)*height/width);}else{newHeight=Math.min(height,1024);newWidth=(int)(((float)

android - 在回收者 View 中加载大量项目

我在fragment中有一个回收器View,基本上我试图在回收器View中加载歌曲列表。回收器View的每一行都包含一个imageview(用于专辑封面)和textview(用于歌曲名称)。当数据集的大小很大时,我遇到了麻烦,即当歌曲太多时,回收器View滞后并且应用程序最终给出ANR。我正在使用Glide在每一行的ImageView中加载专辑封面。谷歌音乐播放器如何能够毫无延迟地显示如此多的歌曲?编辑:这是我的SongsFragmentpublicclassSongsFragmentextendsFragment{static{AppCompatDelegate.setCompatV