Android多个RecyclerView嵌套在NestedScrollView的滑动阻塞问题。

最近在做一个项目,做完首页,将多个RecyclerView嵌套在NestedScrollView中,在Android7.0以下都是流畅运行,但是在新买的Android7.1的手机上,滑动时有时会出现一点阻塞,求问这是为什么?界面和代码如下:
首页效果图:
首页
布局:

 <android.support.v4.widget.NestedScrollView
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:layout_below="@+id/main_linear_search"
                android:layout_marginTop="15dp">

                <android.support.v7.widget.RecyclerView
                    android:id="@+id/home_rv_convenient"
                    android:layout_width="wrap_content"
                    android:layout_height="100dp">
                </android.support.v7.widget.RecyclerView>

                <View
                    android:layout_width="match_parent"
                    android:layout_height="10dp"
                    android:layout_marginTop="10dp"
                    android:layout_marginBottom="10dp"
                    android:background="@color/background_gray"/>

                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="20dp"
                    android:orientation="horizontal"
                    android:layout_gravity="center_horizontal"
                    android:gravity="center_vertical">
                    <View
                        android:layout_width="20dp"
                        android:layout_height="2dp"
                        android:background="@color/background_gray"/>
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:textColor="@color/black"
                        android:layout_marginLeft="5dp"
                        android:layout_marginRight="5dp"
                        android:textSize="12sp"
                        android:text="经典案例"/>
                    <View
                        android:layout_width="20dp"
                        android:layout_height="2dp"
                        android:background="@color/background_gray"/>
                </LinearLayout>

                <android.support.v7.widget.RecyclerView
                    android:id="@+id/home_rv_classical"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content">
                </android.support.v7.widget.RecyclerView>

                <View
                    android:layout_width="match_parent"
                    android:layout_height="10dp"
                    android:layout_marginTop="10dp"
                    android:layout_marginBottom="10dp"
                    android:background="@color/background_gray"/>

                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="20dp"
                    android:orientation="horizontal"
                    android:layout_gravity="center_horizontal"
                    android:gravity="center_vertical">
                    <View
                        android:layout_width="20dp"
                        android:layout_height="2dp"
                        android:background="@color/background_gray"/>
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:textColor="@color/black"
                        android:layout_marginLeft="5dp"
                        android:layout_marginRight="5dp"
                        android:textSize="12sp"
                        android:text="热门优惠"/>
                    <View
                        android:layout_width="20dp"
                        android:layout_height="2dp"
                        android:background="@color/background_gray"/>
                </LinearLayout>

                <android.support.v7.widget.RecyclerView
                    android:id="@+id/home_rv_hot"
                    android:layout_width="wrap_content"
                    android:layout_height="200dp">
                </android.support.v7.widget.RecyclerView>

                <View
                    android:layout_width="match_parent"
                    android:layout_height="10dp"
                    android:layout_marginTop="10dp"
                    android:layout_marginBottom="10dp"
                    android:background="@color/background_gray"/>

                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="20dp"
                    android:orientation="horizontal"
                    android:layout_gravity="center_horizontal"
                    android:gravity="center_vertical">
                    <View
                        android:layout_width="20dp"
                        android:layout_height="2dp"
                        android:background="@color/background_gray"/>
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:textColor="@color/black"
                        android:layout_marginLeft="5dp"
                        android:layout_marginRight="5dp"
                        android:textSize="12sp"
                        android:text="艺届资讯"/>
                    <View
                        android:layout_width="20dp"
                        android:layout_height="2dp"
                        android:background="@color/background_gray"/>
                </LinearLayout>

                <android.support.v7.widget.RecyclerView
                    android:id="@+id/home_rv_article"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content">
                </android.support.v7.widget.RecyclerView>

            </LinearLayout>

        </RelativeLayout>

    </android.support.v4.widget.NestedScrollView>

代码中也进行了设置:

// 滑动优化
mHomeRvConvenient.setNestedScrollingEnabled(false);
mHomeRvHot.setNestedScrollingEnabled(false);
mHomeRvClassical.setNestedScrollingEnabled(false);
mHomeRvArticle.setNestedScrollingEnabled(false);

5个回答

图片说明

ZhangXuxiaoqingnian
勤奋的小狼 回复NiLuogege: 老铁,你这个问题怎么样了
一年多之前 回复
NiLuogege
NiLuogege 请问解决了吗?我也遇到了这个问题
接近 2 年之前 回复
ListerCi
ListerCi 大神啊,请受我一拜
接近 3 年之前 回复

如果问题有描述的不清楚的地方也请指教~

阻塞是指卡顿的现象嘛

ListerCi
ListerCi 大部分情况下是很流畅的滑动的,但是有时候会感觉“拖不动”。一般来说,手指划一下就会移动一段较大的距离,但是阻塞时,手指划多远,NestedScrollView就划多远。打个比方就是感觉没上润滑油,不知道这么说你能不能理解。。。
接近 3 年之前 回复

你这个不涉及到嵌套滚动吧,为什么不直接用ScrollView,然后不用那个优化代码。 至于卡顿原因,这个还真不知道。

这个我不熟,然后我搜了一下ScrollView嵌套rv本来就会有小问题,上面的当我没说。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
recyclerview嵌套了recyclerview滑动冲突

如下图:recyclerview(1)嵌套了recyclerview(2)导致recyclerview(2)上下滑动失效,求解 ![图片说明](https://img-ask.csdn.net/upload/201610/12/1476257042_172904.png)

安卓nestedscrollview和横向recyclerview滑动冲突。

我想仿豆瓣剧照和演员照片可以横向滑动,可是当在所在recyclerview上下滑动时nestedscrollview无滑动效果,试了重写事件分发方法,没有解决,现在求解决。

NestedScrollView嵌套RecyclerView,滚动事件被拦截

现有两个RecyclerView,每个都嵌套有NestedScrollView,部分代码如下 ``` <android.support.v4.widget.NestedScrollView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:background="@color/global_activity_background_color"> <android.support.v7.widget.RecyclerView android:id="@+id/goods_left_recycler_list" android:layout_width="match_parent" android:layout_height="wrap_content"> </android.support.v7.widget.RecyclerView> </android.support.v4.widget.NestedScrollView> <android.support.v4.widget.NestedScrollView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="4" android:background="@color/global_background_color_white"> <android.support.v7.widget.RecyclerView android:id="@+id/goods_right_recycler_list" android:layout_width="match_parent" android:layout_height="wrap_content"> </android.support.v7.widget.RecyclerView> </android.support.v4.widget.NestedScrollView> ``` 运行截图如下: ![图片说明](https://img-ask.csdn.net/upload/201709/20/1505920340_302225.png) 我想点击左侧的item,右侧能滚动到相应位置,但是目前无任何响应,请问各位该如何解决。

Recyclerview嵌套recyclerview的深坑,我坐在Recyclerview这个坑里很久了,仰望天空希望能把我拉上去。

Recyclerview嵌套recyclerview的深坑,对于一个新手来说怎么也上不去,特来邀请键盘中的高手高高手,拉拉我; ## 第一个Recyclerview布局: ``` <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/area_LinearLayout" android:layout_width="match_parent" android:layout_height="match_parent" android:focusable="true" android:focusableInTouchMode="true" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="40dp" android:background="@drawable/drawable_black_one" android:orientation="horizontal" android:layout_margin="3dp"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_margin="5dp" android:layout_gravity="center" android:text="" android:textColor="@drawable/drawable_white_pure" android:lines="1" android:layout_weight="1"/> <TextView android:layout_width="1dp" android:layout_height="30dp" android:layout_gravity="center" android:layout_margin="5dp" android:background="@color/whiteness" /> <TextView android:id="@+id/peers_location_TextView" android:layout_width="70dp" android:layout_height="40dp" android:layout_marginLeft="5sp" android:layout_marginRight="10dp" android:ellipsize="end" android:gravity="center" android:text="" android:textColor="@color/whiteness" android:textSize="14sp" android:lines="1" android:textStyle="bold" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="3dp" > <RelativeLayout android:layout_width="wrap_content" android:layout_height="wrap_content" > <ImageView android:layout_width="20dp" android:layout_height="20dp" android:layout_alignParentTop="true" android:layout_alignParentEnd="true" android:layout_marginTop="0dp" android:layout_marginEnd="10dp" android:scaleType="fitStart" android:src="@drawable/location" /> </RelativeLayout> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="40dp" android:background="@drawable/drawable_black_one" android:layout_gravity="center" android:focusable="true" android:focusableInTouchMode="true" android:layout_margin="3dp"> <EditText android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_margin="1dp" android:background="@color/text_white" android:hint="行业人员" android:textSize="13dp" android:gravity="center" android:lines="1" android:layout_weight="1"/> <TextView android:layout_width="50dp" android:layout_height="wrap_content" android:text="搜索" android:textSize="14dp" android:layout_marginLeft="14dp" android:layout_gravity="center" android:textColor="@color/whiteness" android:layout_margin="5dp" android:gravity="center"/> </LinearLayout> <android.support.v7.widget.RecyclerView android:id="@+id/user_info_layout" android:layout_width="match_parent" android:layout_height="match_parent" /> </LinearLayout> ``` ## 在第一个Recycleview的item里面嵌套了第二个Recyclerview不知道这样对不对? ``` <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <LinearLayout android:id="@+id/portrait" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal"> <ImageView android:id="@+id/user_portrait" android:layout_width="50dp" android:layout_height="50dp" android:layout_margin="5dp" android:src="@drawable/em_default_avatar" /> <LinearLayout android:layout_width="fill_parent" android:layout_height="match_parent" android:layout_weight="1" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="20dp" android:layout_marginTop="5dp" android:gravity="clip_horizontal"> <TextView android:id="@+id/user_industry" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:background="@drawable/dialog_circular_whiteness" android:ellipsize="end" android:gravity="center" android:text="建筑" android:textColor="@color/colorPrimary" android:textSize="14sp" android:textStyle="bold" /> <TextView android:id="@+id/user_name" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="bottom" android:layout_marginLeft="5dp" android:background="@drawable/dialog_circular_whiteness" android:ellipsize="end" android:gravity="center" android:text="努力改变自己" android:textColor="#323232" android:textSize="10sp" android:textStyle="bold" /> <TextView android:id="@+id/name_voip" android:layout_width="20dp" android:layout_height="wrap_content" android:layout_gravity="center" android:ellipsize="end" android:gravity="center" android:text="voip" android:textColor="@color/text_pink" android:textSize="7sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="35dp"> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:text="努力改变自己" android:textSize="12dp" /> </LinearLayout> </LinearLayout> <RelativeLayout android:layout_width="60dp" android:layout_height="match_parent" android:gravity="center"> <TextView android:id="@+id/user_location" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20dp" android:background="@drawable/dialog_circular_whiteness" android:text="" android:textSize="12dp" android:textStyle="bold" /> </RelativeLayout> </LinearLayout> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <LinearLayout android:layout_width="fill_parent" android:layout_height="match_parent" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1"> **<!-- 导入RecyclerView-->** <android.support.v7.widget.RecyclerView android:id="@+id/user_peesr_info" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout> <LinearLayout android:layout_width="fill_parent" android:layout_height="10dp"> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="right" android:text="访问:10000人" android:textSize="8dp" /> </LinearLayout> </LinearLayout> </LinearLayout> ``` ## 第一个Recyclerview的适配器: ``` public class Home_RecyclerView_Adapter extends RecyclerView.Adapter<Home_RecyclerView_Adapter.myViewHodler> { private Context context; private LinkedList<Home_list_get_set> LinkedList; public LinkedList<User_Recruitment_get_set> mLinkedList; public Home_list_get_set mHome_list_get_set; //创建构造函数 public Home_RecyclerView_Adapter(Context context, LinkedList<Home_list_get_set> industrytitlegetsetList) { //将传递过来的数据,赋值给本地变量 this.context = context;//上下文 this.LinkedList = industrytitlegetsetList;//实体类数据ArrayList } /** * 创建viewhodler,相当于listview中getview中的创建view和viewhodler * * @param parent * @param viewType * @return */ @Override public myViewHodler onCreateViewHolder(ViewGroup parent, int viewType) { RecyclerView user_peesr_info;//自定义recyclerveiw的适配器 //创建自定义布局 // View itemView = View.inflate(context, R.layout.peers_list_item, null);//用这个布局item宽高无效 // myViewHodler itemView = new myViewHodler(LayoutInflater.from(context).inflate(R.layout.peers_list_item, parent, false)); View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.peers_list_item, parent, false); user_peesr_info = view.findViewById (R.id.user_peesr_info); //给嵌套的RecyclerView设置适配器 User_Recruitment_Adapter user_recruitment_adapter = new User_Recruitment_Adapter (context,mLinkedList); user_peesr_info.setAdapter (user_recruitment_adapter); user_peesr_info.setLayoutManager (new LinearLayoutManager (context, LinearLayoutManager.HORIZONTAL, false)); //给嵌套的RecyclerView设置item的分割线 user_peesr_info.addItemDecoration (new DividerItemDecoration (context, DividerItemDecoration.HORIZONTAL)); return new myViewHodler(view); // return itemView; } /** * 绑定数据,数据与view绑定 * * @param holder * @param position */ @SuppressLint("ClickableViewAccessibility") @Override public void onBindViewHolder(myViewHodler holder, int position) { //根据点击位置绑定数据 mHome_list_get_set = LinkedList.get(position); // holder.mItemGoodsImg; holder.user_name.setText(mHome_list_get_set.getUser_name()); holder.user_industry.setText(mHome_list_get_set.getUser_work()); // holder.user_portrait.setImageDrawable (data.getHead_portait ());//改为下面Glide获取图上 Glide.with(context) .load(mHome_list_get_set.getHead_portait ())//图片信息 .apply(RequestOptions.bitmapTransform(new CircleCrop ()))//设置圆形 .into(holder.user_portrait);//设置到那个部位 holder.name_voip.setText(mHome_list_get_set.getUser_Vip()); holder.user_location.setText(mHome_list_get_set.getUser_location()); } /** * 得到总条数 * * @return */ @Override public int getItemCount() { // return LinkedList.size(); return LinkedList == null ? 0 : LinkedList.size(); } //自定义viewhodler class myViewHodler extends RecyclerView.ViewHolder { private ImageView user_portrait; private TextView user_name; private TextView user_industry; private TextView name_voip; private TextView user_location; public RecyclerView user_peesr_info;//自定义recyclerveiw的适配器 public myViewHodler(View itemView) { super(itemView); user_peesr_info = itemView.findViewById (R.id.user_peesr_info); user_portrait = itemView.findViewById(R.id.user_portrait); user_name = itemView.findViewById(R.id.user_name); user_industry = itemView.findViewById(R.id.user_industry); name_voip = itemView.findViewById(R.id.name_voip); user_location = itemView.findViewById(R.id.user_location); user_portrait.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //可以选择直接在本位置直接写业务处理 //Toast.makeText(context,"点击了xxx",Toast.LENGTH_SHORT).show(); //此处回传点击监听事件 if (onItemClickListener != null) { onItemClickListener.OnItemClick(v, LinkedList.get(getLayoutPosition())); } } }); } public View getItemView() { return itemView; } } /** * 设置item的监听事件的接口 */ public interface OnItemClickListener { /** * 接口中的点击每一项的实现方法 * * @param view 点击的item的视图 * @param data 点击的item的数据 */ public void OnItemClick(View view, Home_list_get_set data); } //需要外部访问,所以需要设置set方法,方便调用 private OnItemClickListener onItemClickListener; public void setOnItemClickListener(OnItemClickListener onItemClickListener) { this.onItemClickListener = onItemClickListener; } ``` ## 第二个Recyclerview的适配器: ``` public class User_Recruitment_Adapter extends RecyclerView.Adapter<User_Recruitment_Adapter.myViewHodler> { public LinkedList<User_Recruitment_get_set> m_LinkedList; private Context context; public User_Recruitment_get_set mUser_Recruitment_get_set; //创建构造函数 public User_Recruitment_Adapter(Context context, LinkedList<User_Recruitment_get_set> mLinkedList) { //将传递过来的数据,赋值给本地变量 this.context = context;//上下文 this.m_LinkedList = mLinkedList; } @NonNull @Override public myViewHodler onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) { View view = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.user_peers_recruitment_item, viewGroup, false); return new myViewHodler(view); } @Override public void onBindViewHolder(@NonNull myViewHodler myViewHodler, int i) { mUser_Recruitment_get_set = m_LinkedList.get(i); myViewHodler.recruitment.setText (mUser_Recruitment_get_set.getRecruitment ()); } @Override public int getItemCount() { return m_LinkedList == null ? 0 : m_LinkedList.size(); } public class myViewHodler extends RecyclerView.ViewHolder { private TextView recruitment; public myViewHodler(@NonNull View itemView) { super (itemView); recruitment = itemView.findViewById(R.id.recruitment); } } } ``` ## 现问题是嵌套里面的Recyclerview无显示内容?我该如何写?

recyclerView 中嵌套复杂布局滑动卡顿的情况如何解决

recyclerView 嵌套 recyclerView 或者Viewpager等复杂布局的时候,初次下滑 会出现明显的卡顿,再次下滑的时候就不会卡顿了,请问这个情况怎么解决。 如何让recyclerView 第一次加载的时候就直接把所有的item加载完?

nestedscrollview和横向recyclerview滑动冲突。

10元红包求解决nestedscrollview和横向recyclerview滑动冲突问题 可以的私聊我。q1658678657

CoordinatorLayout中嵌套NestedScrollView,滑动时出现波动

![滑动时老是出现那种NestedScrollView已滑动但是AppBarLayout要等一会才收缩,就出现那种一卡一卡的情况,求大神帮一下啊](https://img-ask.csdn.net/upload/201702/14/1487078753_362893.gif) 滑动时老是出现那种NestedScrollView已滑动但是AppBarLayout要等一会才收缩,就出现那种一卡一卡的情况,求大神帮一下啊

安卓ListView中嵌套RecyclerView,触碰recy时Collapsing不滑动

ListView中嵌套RecyclerView,RecyclerView放图片左右滑动,ListView放在CoordinatorLayout布局,当触碰recyclerView上下滑动时ListView会滑动,但不是CollapsingToolbarLayout先滑动折叠。 这是布局 <?xml version="1.0" encoding="utf-8"?> <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/homepage_head" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" > <android.support.design.widget.AppBarLayout android:fitsSystemWindows="true" android:theme="@style/AppTheme.AppBarOverlay"> <android.support.design.widget.CollapsingToolbarLayout android:fitsSystemWindows="true" app:titleEnabled="false" android:theme="@style/AppTheme.AppBarOverlay" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <LinearLayout android:layout_marginTop="?attr/actionBarSize" android:layout_width="match_parent" android:orientation="vertical" android:layout_height="match_parent"> ………… </LinearLayout> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" app:layout_collapseMode="pin" app:popupTheme="@style/AppTheme.PopupOverlay" > ………… </android.support.v7.widget.Toolbar> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout> <android.support.v4.widget.NestedScrollView android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <cn.view.MyListView <!--item包含RecyclerView --> app:layout_behavior="@string/appbar_scrolling_view_behavior" android:layout_width="match_parent" android:dividerHeight="8dp" android:layout_height="match_parent"></cn.view.MyListView> </android.support.v4.widget.NestedScrollView> </android.support.design.widget.CoordinatorLayout>

ScrollView嵌套RecyclerView导致RecyclerView加载的时候会初始化所有数据,Item无法复用的问题

请问一下,有没有方法可以解决,ScrollView嵌套RecyclerView导致RecyclerView加载的时候会初始化所有数据,Item无法复用的问题

Android TV开发,ScrollView嵌套RecyclerView滑动问题

我用的是FocusLayout来让有焦点的控件有个边框, 结果当RecyclerView由下滑动到第一行条目的时候,因为ScrollView还没有到最上面的顶点, 所以还能再往上滑动一次,这个时候FocusLayout还是会绘制一个边框,然后那里没有控件. 请教大佬帮忙解决下. FocusLayout的代码如下,这个是用来绘制边框的. ```public class FocusLayout extends RelativeLayout implements ViewTreeObserver.OnGlobalFocusChangeListener { private LayoutParams mFocusLayoutParams; private View mFocusView; public FocusLayout(Context context) { super(context); init(context); } public FocusLayout(Context context, AttributeSet attrs) { super(context, attrs); init(context); } public FocusLayout(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); init(context); } private void init(Context context) { this.mFocusLayoutParams = new LayoutParams(0, 0); this.mFocusView = new View(context); this.mFocusView.setBackgroundResource(R.drawable.default_focus); // this.mFocusView.setBackgroundResource(R.drawable.focus); // this.mFocusView.setBackgroundColor(getResources().getColor(R.color.test)); this.addView(this.mFocusView, this.mFocusLayoutParams); } public void show(){ mFocusView.setVisibility(View.VISIBLE); } public void unShow(){ mFocusView.setVisibility(View.INVISIBLE); } @Override public void onGlobalFocusChanged(View oldFocus, View newFocus) { Rect viewRect = new Rect(); if (newFocus==null)return; newFocus.getGlobalVisibleRect(viewRect); correctLocation(viewRect); this.setFocusLocation( viewRect.left - this.mFocusView.getPaddingLeft(), viewRect.top - this.mFocusView.getPaddingTop(), viewRect.right + this.mFocusView.getPaddingRight(), viewRect.bottom + this.mFocusView.getPaddingBottom()); } /** * 由于getGlobalVisibleRect获取的位置是相对于全屏的,所以需要减去FocusLayout本身的左与上距离,变成相对于FocusLayout的 * @param rect */ private void correctLocation(Rect rect) { Rect layoutRect = new Rect(); this.getGlobalVisibleRect(layoutRect); rect.left -= layoutRect.left; rect.right -= layoutRect.left; rect.top -= layoutRect.top; rect.bottom -= layoutRect.top; } /** * 设置焦点view的位置,计算焦点框的大小 * * @param left * @param top * @param right * @param bottom */ protected void setFocusLocation(int left, int top, int right, int bottom) { int width = right - left; int height = bottom - top; this.mFocusLayoutParams.width = width; this.mFocusLayoutParams.height = height; this.mFocusLayoutParams.leftMargin = left; this.mFocusLayoutParams.topMargin = top; this.mFocusView.layout(left, top, right, bottom); } } ```

Scrollview中嵌套recyclerview时,如何获得recyclerview的总高度?

Scrollview中嵌套recyclerview时,如何获得recyclerview的总高度?不然外层的scrollview没什么用

DrawLayout嵌套recyclerview,scrolltoposition失效

<android.support.v4.widget.DrawerLayout android:id="@+id/dl" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_alignParentTop="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" > <android.support.design.widget.NavigationView android:id="@+id/nav_view" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="start" android:layout_marginTop="?attr/actionBarSize" app:headerLayout="@layout/fragment_document_drawer_list" /> </android.support.v4.widget.DrawerLayout> </RelativeLayout> fragment_document_drawer_list 里面只有一个帧布局,帧布局里面有个recyclerview 拉开侧拉菜单栏后,recyclerview的item可以点击但是scrolltoposition失效了。我在fragment_document_drawer_list的帧布局里设置个button,位置为居中,但是最终居中的却不是可见范围内的居中,求助!

关于CoordinatorLayout嵌套RecyclerView滑动

当列表第一项不在顶部时,就不能把头部的视图一起带出来,要先回到顶部,再拉一下才行,网上的好多demo,只要是CoordinatorLayout都有这个问题,无法像支付宝那样上拉的时候拉回到列表最顶端的时候顺带将原来隐藏的内容恢复显示,现在我都怀疑支付宝可能不是CoordinatorLayout做的了![列表回滚时回到列表顶需要再次下拉才会恢复隐藏显示](https://img-ask.csdn.net/upload/201705/24/1495610356_70751.png)

scrollview 嵌套recyclerview

scrollview 嵌套recyclerview时,当recyclerview中的item控件为TextView时,TextView文字过多则导致 RecyclerView显示不全,已经重写了LinearLayoutManager,和Scorllview

recyclerview嵌套listview 在listview的列表全部移出屏幕之前是否能够重用

recyclerview的复用机制,如果嵌套了listview或者其他的列表 是不是在该列表移出屏幕之前是不会重用的?

RecycleView嵌套gridView

public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) { final int p=position/2; if (holder instanceof Item1ViewHolder) { ((Item1ViewHolder) holder).tittle.setText(mDataList.get(p).getName()); } else { gvAdapter = new PropertyGvAdapter(mContext); gvAdapter.setData(mDataList.get(p).getAttrValues()); ((ItemGvViewHolder) holder).sodukuGridView.setAdapter(gvAdapter); ((ItemGvViewHolder) holder).sodukuGridView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int fuckP, long id) { gvAdapter.changeSelect(fuckP); ToastUtils.showShort(mContext,mDataList.get(p).getName()+"="+mDataList.get(p).getAttrValues().get(fuckP).getName()); } }); } } ``` ![图片说明](https://img-ask.csdn.net/upload/201608/04/1470299261_635321.jpg) 整体是recycleView 奇数position是gridView 但是gridView的adapter貌似被复用了 导致里面的数据都是一个gridView的 gvAdapter.changeSelect(fuckP); 导致我调用这个方法 会角标越界 显示size只有6

android viewpage 2个viewpage嵌套 滑动

android viewpage如何实现2个viewpage嵌套后,里面的滑动到最后一页时候再右滑,外层的viewpage与之联动加载下一页 大概是这样的,viewpage嵌套多个fragment, 其中一个fragment又嵌套viewpage,当这个viewpage滑动到最后一页再手势左划时候, 外层的那个viewpage随之滑动出下一页,并且滑动效果与手势滑动距离有关联, 现在可以监控内层viewpage是否滑动到最后一页,再滑动就让外层viewpage加载下一个, 但是这样没有效果,直接就切过去了,求方法!!! 例子可以看 自如app那个首页广告的滑动!

Android RecyclerView滑动卡顿怎么解决?求指点!

使用recyclerview滑动加载更多会出现卡顿的情况,求大神指导这应该怎么解决!

Android 如何在RecyclerView中添加Fragment?

想要把Fragment当做Item添加到RecyclerView中,如何实现呢?

技术大佬:我去,你写的 switch 语句也太老土了吧

昨天早上通过远程的方式 review 了两名新来同事的代码,大部分代码都写得很漂亮,严谨的同时注释也很到位,这令我非常满意。但当我看到他们当中有一个人写的 switch 语句时,还是忍不住破口大骂:“我擦,小王,你丫写的 switch 语句也太老土了吧!” 来看看小王写的代码吧,看完不要骂我装逼啊。 private static String createPlayer(PlayerTypes p...

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

CSDN:因博主近期注重写专栏文章(已超过150篇),订阅博主专栏人数在突增,近期很有可能提高专栏价格(已订阅的不受影响),提前声明,敬请理解!

CSDN:因博主近期注重写专栏文章(已超过150篇),订阅博主专栏人数在突增,近期很有可能提高专栏价格(已订阅的不受影响),提前声明,敬请理解! 目录 博客声明 大数据了解博主粉丝 博主的粉丝群体画像 粉丝群体性别比例、年龄分布 粉丝群体学历分布、职业分布、行业分布 国内、国外粉丝群体地域分布 博主的近期访问每日增量、粉丝每日增量 博客声明 因近期博主写专栏的文章越来越多,也越来越精细,逐步优化文章。因此,最近一段时间,订阅博主专栏的人数增长也非常快,并且专栏价

我说我不会算法,阿里把我挂了。

不说了,字节跳动也反手把我挂了。

培训班出来的人后来都怎么样了?(二)

接着上回说,培训班学习生涯结束了。后面每天就是无休止的背面试题,不是没有头脑的背,培训公司还是有方法的,现在回想当时背的面试题好像都用上了,也被问到了。回头找找面试题,当时都是打印下来天天看,天天背。 不理解呢也要背,面试造飞机,上班拧螺丝。班里的同学开始四处投简历面试了,很快就有面试成功的,刚开始一个,然后越来越多。不知道是什么原因,尝到胜利果实的童鞋,不满足于自己通过的公司,嫌薪水要少了,选择...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

工作八年,月薪60K,裸辞两个月,投简历投到怀疑人生!

近日,有网友在某职场社交平台吐槽,自己裸辞两个月了,但是找工作却让自己的心态都要崩溃了,全部无果,不是已查看无回音,就是已查看不符合。 “工作八年,两年一跳,裸辞两个月了,之前月薪60K,最近找工作找的心态崩了!所有招聘工具都用了,全部无果,不是已查看无回音,就是已查看不符合。进头条,滴滴之类的大厂很难吗???!!!投简历投的开始怀疑人生了!希望 可以收到大厂offer” 先来看看网...

97年世界黑客编程大赛冠军作品(大小仅为16KB),惊艳世界的编程巨作

这是世界编程大赛第一名作品(97年Mekka ’97 4K Intro比赛)汇编语言所写。 整个文件只有4095个字节, 大小仅仅为16KB! 不仅实现了3D动画的效果!还有一段震撼人心的背景音乐!!! 内容无法以言语形容,实在太强大! 下面是代码,具体操作看最后! @echo off more +1 %~s0|debug e100 33 f6 bf 0 20 b5 10 f3 a5...

不要再到处使用 === 了

我们知道现在的开发人员都使用 === 来代替 ==,为什么呢?我在网上看到的大多数教程都认为,要预测 JavaScript 强制转换是如何工作这太复杂了,因此建议总是使用===。这些都...

什么是a站、b站、c站、d站、e站、f站、g站、h站、i站、j站、k站、l站、m站、n站?00后的世界我不懂!

A站 AcFun弹幕视频网,简称“A站”,成立于2007年6月,取意于Anime Comic Fun,是中国大陆第一家弹幕视频网站。A站以视频为载体,逐步发展出基于原生内容二次创作的完整生态,拥有高质量互动弹幕,是中国弹幕文化的发源地;拥有大量超粘性的用户群体,产生输出了金坷垃、鬼畜全明星、我的滑板鞋、小苹果等大量网络流行文化,也是中国二次元文化的发源地。 B站 全称“哔哩哔哩(bilibili...

终于,月薪过5万了!

来看几个问题想不想月薪超过5万?想不想进入公司架构组?想不想成为项目组的负责人?想不想成为spring的高手,超越99%的对手?那么本文内容是你必须要掌握的。本文主要详解bean的生命...

MySQL性能优化(五):为什么查询速度这么慢

前期回顾: MySQL性能优化(一):MySQL架构与核心问题 MySQL性能优化(二):选择优化的数据类型 MySQL性能优化(三):深入理解索引的这点事 MySQL性能优化(四):如何高效正确的使用索引 前面章节我们介绍了如何选择优化的数据类型、如何高效的使用索引,这些对于高性能的MySQL来说是必不可少的。但这些还完全不够,还需要合理的设计查询。如果查询写的很糟糕,即使表结构再合理、索引再...

用了这个 IDE 插件,5分钟解决前后端联调!

点击上方蓝色“程序猿DD”,选择“设为星标”回复“资源”获取独家整理的学习资料!作者 |李海庆我是一个 Web 开发前端工程师,受到疫情影响,今天是我在家办公的第78天。开发了两周,...

大厂的 404 页面都长啥样?最后一个笑了...

每天浏览各大网站,难免会碰到404页面啊。你注意过404页面么?猿妹搜罗来了下面这些知名网站的404页面,以供大家欣赏,看看哪个网站更有创意: 正在上传…重新上传取消 腾讯 正在上传…重新上传取消 网易 淘宝 百度 新浪微博 正在上传…重新上传取消 新浪 京东 优酷 腾讯视频 搜...

【高并发】高并发秒杀系统架构解密,不是所有的秒杀都是秒杀!

网上很多的文章和帖子中在介绍秒杀系统时,说是在下单时使用异步削峰来进行一些限流操作,那都是在扯淡! 因为下单操作在整个秒杀系统的流程中属于比较靠后的操作了,限流操作一定要前置处理,在秒杀业务后面的流程中做限流操作是没啥卵用的。

自从喜欢上了B站这12个UP主,我越来越觉得自己是个废柴了!

不怕告诉你,我自从喜欢上了这12个UP主,哔哩哔哩成为了我手机上最耗电的软件,几乎每天都会看,可是吧,看的越多,我就越觉得自己是个废柴,唉,老天不公啊,不信你看看…… 间接性踌躇满志,持续性混吃等死,都是因为你们……但是,自己的学习力在慢慢变强,这是不容忽视的,推荐给你们! 都说B站是个宝,可是有人不会挖啊,没事,今天咱挖好的送你一箩筐,首先啊,我在B站上最喜欢看这个家伙的视频了,为啥 ,咱撇...

代码注释如此沙雕,会玩还是你们程序员!

某站后端代码被“开源”,同时刷遍全网的,还有代码里的那些神注释。 我们这才知道,原来程序员个个都是段子手;这么多年来,我们也走过了他们的无数套路… 首先,产品经理,是永远永远吐槽不完的!网友的评论也非常扎心,说看这些代码就像在阅读程序员的日记,每一页都写满了对产品经理的恨。 然后,也要发出直击灵魂的质问:你是尊贵的付费大会员吗? 这不禁让人想起之前某音乐app的穷逼Vip,果然,穷逼在哪里都是...

Java14 新特性解读

Java14 已于 2020 年 3 月 17 号发布,官方特性解读在这里:https://openjdk.java.net/projects/jdk/14/以下是个人对于特性的中文式...

爬虫(101)爬点重口味的

小弟最近在学校无聊的很哪,浏览网页突然看到一张图片,都快流鼻血。。。然后小弟冥思苦想,得干一点有趣的事情python 爬虫库安装https://s.taobao.com/api?_ks...

疫情后北上广深租房价格跌了吗? | Alfred数据室

去年3月份我们发布了《北上广深租房图鉴》(点击阅读),细数了北上广深租房的各种因素对租房价格的影响。一年过去了,在面临新冠疫情的后续影响、城市尚未完全恢复正常运转、学校还没开学等情况下...

面试官给我挖坑:a[i][j] 和 a[j][i] 有什么区别?

点击上方“朱小厮的博客”,选择“设为星标”后台回复&#34;1024&#34;领取公众号专属资料本文以一个简单的程序开头——数组赋值:int LEN = 10000; int[][] ...

又一起程序员被抓事件

就在昨天互联网又发生一起让人心酸的程序员犯罪事件,著名的百度不限速下载软件 Pandownload PC 版作者被警方抓获。案件大致是这样的:软件的作者不仅非法盗取用户数据,还在QQ群进...

应聘3万的职位,有必要这么刁难我么。。。沙雕。。。

又一次被面试官带到坑里面了。面试官:springmvc用过么?我:用过啊,经常用呢面试官:springmvc中为什么需要用父子容器?我:嗯。。。没听明白你说的什么。面试官:就是contr...

太狠了,疫情期间面试,一个问题砍了我5000!

疫情期间找工作确实有点难度,想拿到满意的薪资,确实要点实力啊!面试官:Spring中的@Value用过么,介绍一下我:@Value可以标注在字段上面,可以将外部配置文件中的数据,比如可以...

Intellij IDEA 美化指南

经常有人问我,你的 IDEA 配色哪里搞的,我会告诉他我自己改的。作为生产力工具,不但要顺手而且更要顺眼。这样才能快乐编码,甚至降低 BUG 率。上次分享了一些 IDEA 有用的插件,反...

【相亲】96年程序员小哥第一次相亲,还没开始就结束了

颜值有点高,条件有点好

太厉害了,终于有人能把TCP/IP 协议讲的明明白白了

一图看完本文 一、 计算机网络体系结构分层 计算机网络体系结构分层 计算机网络体系结构分层 不难看出,TCP/IP 与 OSI 在分层模块上稍有区别。OSI 参考模型注重“通信协议必要的功能是什么”,而 TCP/IP 则更强调“在计算机上实现协议应该开发哪种程序”。 二、 TCP/IP 基础 1. TCP/IP 的具体含义 从字面意义上讲,有人可能会认为...

腾讯面试题: 百度搜索为什么那么快?

我还记得去年面腾讯时,面试官最后一个问题是:百度/google的搜索为什么那么快? 这个问题我懵了,我从来没想过,搜素引擎的原理是什么 然后我回答:百度爬取了各个网站的信息,然后进行排序,当输入关键词的时候进行文档比对……巴拉巴拉 面试官:这不是我想要的答案 我内心 这个问题我一直耿耿于怀,终于今天,我把他写出来,以后再问,我直接把这篇文章甩给他!!! 两个字:倒排,将贯穿整篇文章,也是面试官...

相关热词 c# 开发接口 c# 中方法上面的限制 c# java 时间戳 c#单元测试入门 c# 数组转化成文本 c#实体类主外键关系设置 c# 子函数 局部 c#窗口位置设置 c# list 查询 c# 事件 执行顺序
立即提问
相关内容推荐