scrollview嵌套viewpager的问题

布局 是 最外面是scrollview 然后里面是一张图片 图片下面是viewpager viewpager
里面是三个fragment 每个fragment都有一个listview 现在问题是每次滑动切换
viewpager scrollview会自动滑下来 把图片隐藏掉 显示viewpager内的fragment的
内容 求大神讲下问题出在哪里

1个回答

1、ViewPAger不显示的情况,设置 android:fillViewport="true"
2、ViewPager显示在屏幕下方,需要手动划一下才能看到ViewPager。
解决办法:
调用ScrollView的fullScorll方法。若是直接调用调用fullScroll,会发现无法滚动到真正的底部,这是因为Android下很多(如果不是全部的话)函数都是基于消息的,用消息队列来保证......
答案就在这里:ScrollView和ViewPager嵌套的问题
----------------------Hi,地球人,我是问答机器人小S,上面的内容就是我狂拽酷炫叼炸天的答案,除了赞同,你还有别的选择吗?

wior07
wior07 谢谢回答 我现在已经解决了 通过监听scrollview 获得到oldy 然后在viewpager滑动监听onPageScrollStateChanged 里面让scrollview调用smoothScrollTo(0,oldy) 就可以不让scrollview不自己滑下去~
3 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
scrollview嵌套viewpager viewpager无法自适应高度
scrollview嵌套viewpager (左右滑动的) viewpager自适应高度失效了。。。怎么解决scrollview里面viewpager的高度自适应问题
ScrollView嵌套ViewPager,ViewPager中再嵌套ListView怎么实现
ScrollView嵌套ViewPager,ViewPager中再嵌套ListView怎么实现
scrollview 嵌套viewpager 放listview 不能滑动
![图片说明](https://img-ask.csdn.net/upload/201510/07/1444198871_407362.png)
ScrollView嵌套ViewPager嵌套RecycleView item显示不全
如图所示:![图片说明](https://img-ask.csdn.net/upload/201704/24/1492995631_318407.png) 我在ScrollView里面嵌套了可以左右滑动的Viewpager,viewpager里面是上下滑动的 RecycleView,目前发现的问题是我给RecycleVIew设置的加载头显示不出来,最后一行也是显示不完全。感觉是滑动冲突的原因,但是网上没有系统的解决问题办法。请大家给点切实可行的解决办法吧 下面附上我的xml: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/rl_map_all" android:layout_width="match_parent" android:layout_height="match_parent"> <!--底部图层--> <android.support.v4.widget.DrawerLayout android:id="@+id/drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent"> <!--底部图层--> <include layout="@layout/fragment_map" /> <!--右侧侧滑栏--> <include layout="@layout/map_slide_right" /> </android.support.v4.widget.DrawerLayout> <com.yinglan.scrolllayout.ScrollLayout android:id="@+id/scroll_down_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#00550033" android:visibility="gone" app:allowHorizontalScroll="true" app:exitOffset="0dp" app:isSupportExit="true" app:maxOffset="300dp" app:minOffset="50dp" app:mode="open"> <!--多条记录悬浮--> <com.yinglan.scrolllayout.content.ContentScrollView android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true"> <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout android:layout_width="match_parent" android:layout_height="@dimen/dimen1800" android:clickable="true" android:focusable="true" android:focusableInTouchMode="true" android:orientation="vertical"> <com.example.administrator.im_demo.ui.view.navigationbar.indicators.MagicIndicator android:id="@+id/magic_indicator" android:layout_width="match_parent" android:layout_height="@dimen/dimen120" android:background="@color/tab_title" /> <android.support.v4.view.ViewPager android:id="@+id/viewpager_search_result" android:layout_width="match_parent" android:layout_height="match_parent" /> </LinearLayout> <TextView android:id="@+id/tv_next" android:layout_width="match_parent" android:layout_height="@dimen/dimen110" android:background="@color/white" android:clickable="true" android:gravity="center" android:text="总共XX条记录" android:textColor="@color/white" android:textSize="@dimen/dimen32" android:visibility="gone" /> </RelativeLayout> </com.yinglan.scrolllayout.content.ContentScrollView> </com.yinglan.scrolllayout.ScrollLayout> <android.support.v7.widget.Toolbar android:id="@+id/toolbar_mapall" android:layout_width="match_parent" android:layout_height="50dp" android:background="?attr/colorPrimary" android:minHeight="?attr/actionBarSize" android:titleTextColor="@android:color/white" app:popupTheme="@style/ThemeOverlay.AppCompat.Light" app:theme="@style/ThemeOverlay.AppCompat.ActionBar" android:visibility="gone"/> </RelativeLayout> ``` ``` <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:background="@color/white"> <com.wan7451.wanadapter.mylibrary.WanRecycleView android:id="@+id/recycleview_float_company" android:layout_width="match_parent" android:layout_height="match_parent" /> </LinearLayout> ``` ``` 下面是几个引用的view: /* * * * sufly0001@gmail.com Modify the code to enhance the ease of use. * * * * Copyright (C) 2015 Ted xiong-wei@hotmail.com * * Licensed under the Apache License, Version 2.0 (the "License"); * * you may not use this file except in compliance with the License. * * You may obtain a copy of the License at * * * * http://www.apache.org/licenses/LICENSE-2.0 * * * * Unless required by applicable law or agreed to in writing, software * * distributed under the License is distributed on an "AS IS" BASIS, * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * * See the License for the specific language governing permissions and * * limitations under the License. * * */ package com.yinglan.scrolllayout.content; import android.content.Context; import android.util.AttributeSet; import android.view.MotionEvent; import android.view.ViewParent; import android.widget.ScrollView; import com.yinglan.scrolllayout.ScrollLayout; public class ContentScrollView extends ScrollView { public interface OnScrollChangedListener { void onScrollChanged(int l, int t, int oldl, int oldt); } private OnScrollChangedListener listener; public ContentScrollView(Context context) { super(context); } public ContentScrollView(Context context, AttributeSet attrs) { super(context, attrs); } public ContentScrollView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); } public void setOnScrollChangeListener(OnScrollChangedListener listener) { this.listener = listener; } @Override protected void onScrollChanged(int l, int t, int oldl, int oldt) { super.onScrollChanged(l, t, oldl, oldt); listener.onScrollChanged(l, t, oldl, oldt); } @Override protected void onAttachedToWindow() { super.onAttachedToWindow(); ViewParent parent = this.getParent(); while (parent != null) { if (parent instanceof ScrollLayout) { ((ScrollLayout) parent).setAssociatedScrollView(this); break; } parent = parent.getParent(); } } @Override public boolean onTouchEvent(MotionEvent ev) { ViewParent parent = this.getParent(); if (parent instanceof ScrollLayout) { if (((ScrollLayout) parent).getCurrentStatus() == ScrollLayout.Status.OPENED) return false; } return super.onTouchEvent(ev); } } ``` ``` package com.wan7451.wanadapter.mylibrary; import android.content.Context; import android.support.v7.widget.RecyclerView; import android.util.AttributeSet; import com.handmark.pulltorefresh.library.PullToRefreshBase; /** * Created by Hello on 2015/6/30. */ public class WanRecycleView extends PullToRefreshBase<RecyclerView> { public WanRecycleView(Context context) { super(context); } public WanRecycleView(Context context, AttributeSet attrs) { super(context, attrs); } public WanRecycleView(Context context, Mode mode) { super(context, mode); } public WanRecycleView(Context context, Mode mode, AnimationStyle animStyle) { super(context, mode, animStyle); } @Override public Orientation getPullToRefreshScrollDirection() { return Orientation.VERTICAL; } @Override protected RecyclerView createRefreshableView(Context context, AttributeSet attrs) { RecyclerView view = new RecyclerView(context, attrs); view.setId(R.id.recycleView); return view; } @Override protected boolean isReadyForPullEnd() { int lastVisiblePosition = getRefreshableView().getChildAdapterPosition(getRefreshableView().getChildAt(getRefreshableView().getChildCount() -1)); if (lastVisiblePosition >= getRefreshableView().getAdapter().getItemCount()-1) { return getRefreshableView().getChildAt(getRefreshableView().getChildCount() - 1).getBottom() <= getRefreshableView().getBottom(); } return false; } @Override protected boolean isReadyForPullStart() { if (getRefreshableView().getChildCount() <= 0) return true; int firstVisiblePosition = getRefreshableView().getChildAdapterPosition(getRefreshableView().getChildAt(0)); if (firstVisiblePosition == 0) return getRefreshableView().getChildAt(0).getTop() == getRefreshableView().getPaddingTop(); else return false; } } ``` ```
安卓中怎么实现scrollView嵌套ViewPager时,viewPager的tab平滑过渡?
<br/> **效果如掌上英雄联盟这样,viewPager的Tab能够停在头部且平滑过渡:** <br/> ![图片说明](https://img-ask.csdn.net/upload/201607/07/1467881652_335596.gif) <br/> **我自己实现的效果如下:** <br/> ![图片说明](https://img-ask.csdn.net/upload/201607/07/1467882064_700239.gif) <br/> **希望能像掌盟那样,当viewPager的Tab到达页面顶部且停在顶部时,不需要下一次触摸,viewPager中的listView就能滑动,没有停顿。** <br/>
scrollview+viewpager+lisview listview要上拉架子啊
![项目图图片说明](https://img-ask.csdn.net/upload/201609/16/1474004457_699457.png)scrollview里面嵌套Viewpager 然后viewpager里面的fragment 是listview listview要实现上拉加载
ScrollView,ViewPager,ListView嵌套问题
![图片说明](https://img-ask.csdn.net/upload/201504/22/1429682508_934584.png) 项目中想类似实现如上图的效果,全局一个ScrollView,下面我用的是ViewPager,里面有3个Fragment,Fragment下面有ListView,嵌套的各种冲突基本百度谷歌解决了,运行测试数据是没问题的,但因为我的ListView是直接计算高度的,失去了缓存机制和回收机制,在第一次加载的时候都会把ListView的所有项加载进来,担心后面会有效率的问题,因为ListView数据还是挺多的,大神们有更好的解决方法么?
android viewpager 自适应高度问题
scrollview 嵌套viewpager viewpager 中放入fragment fragment由Listview显示 第一页比第二页多 第二页会多出很多空白 去哪里加onmeasure
ViewPager嵌套ListView,ListView显示不全也不能上下滑动
RT 现在对ScrollView嵌套ViewPager,然后ViewPager的Pager里又嵌套ListView很困惑。 在ViewPager不包裹在ScrollView中的情况,怎样让ViewPager完美的嵌套ListView. 求一个成熟的解决方案,尽量要流畅。
scrollview中 listview的下拉刷新怎么不显示
scrollview中嵌套viewpager viewpager中放fragment fragment 中放网上的那个PullToRefreshListView 怎么不会有下拉刷新的效果 PullToRefreshListView此控件 我放在别的里面是可以用的 放在scrollview中就不显示
ScrollView内嵌套有一个广告ViewPager以及ListView的商品成列
ScrollView内嵌套有一个广告ViewPager以及ListView的商品成列,因为考虑到在scrollView中的ListView不能全部显示,所以重写了ListView,但是在运行的时候会出现ListView加载所有的数据····倒是卡住。求解
获取WebView的内容高度Android
ScrollView嵌套了ViewPager,ViewPager中又嵌套了三个WebView。需要获取WebView的内容高度,然后把它设置为ViewPager的高度。 getContentHeight() * getScale()只能在点到WebView时才会获得高度。怎么才能够一加载WebView就获取到它的内容高度啊。
ScrollView中嵌套复杂布局
布局如下: <RelativeLayout> <ScrollView> <LinearLayout> <ViewPager/> <TextView/> <TextView/> <ListView/> </LinearLayout> </ScrollView> </RelativeLayout> 布局只写了一个大概,ScrollView中有ViewPager,TextView,ListView等多个控件, ScrollView与ListView的冲突已经解决,ListView的高度也完全能够显示, 但是当布局初始化的时候,ListView上方的控件全部都没有显示,ScrollView中, 屏幕显示的内容只有ListView,只有手动下滑才会显示ListView上面的ViewPager,TextView等控件。 哪位大神可以帮忙一下,让初始化布局的时候屏幕中出现的是RelativeLayout中最上面的控件,而不是只显示ListView,跪求大神们帮帮忙啊。。。。
只执行DOWN不走UP MOVE
如下我想在recycleview里写拦截事件处理scrollview嵌套viewpager嵌套viewpager带来的冲突问题 现在只执行DOWN不执行UP MOVE呢? @Override public boolean onInterceptTouchEvent(MotionEvent ev) { int action = ev.getAction(); switch (action) { case MotionEvent.ACTION_DOWN: downY = ev.getRawY(); downX = ev.getRawX(); //当传入的参数为true时,表示子组件要自己消费这次事件,告诉父组件不要拦截(抢走)这次的事件 this.getParent().requestDisallowInterceptTouchEvent(true); break; case MotionEvent.ACTION_MOVE: upY = ev.getRawY(); upX = ev.getRawX(); floatY = downY - upY; floatX = downX - upX; if (Math.abs(floatX) > 10) { this.getParent().requestDisallowInterceptTouchEvent(false); } //上滑 if (floatY > 0) { this.addOnScrollListener(new OnScrollListener() { @Override public void onScrolled(RecyclerView recyclerView, int dx, int dy) { super.onScrolled(recyclerView, dx, dy); //获取可见数目 layoutManager = (LinearLayoutManager) getLayoutManager(); visibleItemCount = layoutManager.getChildCount(); LogUtils.i("可见数目 " + visibleItemCount); } }); if (visibleItemCount > 5) { this.getParent().requestDisallowInterceptTouchEvent(true); } else { this.getParent().requestDisallowInterceptTouchEvent(false); } } //下滑 else { this.addOnScrollListener(new OnScrollListener() { @Override public void onScrolled(RecyclerView recyclerView, int dx, int dy) { super.onScrolled(recyclerView, dx, dy); //获取recycleview首个item是否可见 layoutManager = (LinearLayoutManager) getLayoutManager(); seeFirstPostion = layoutManager.findFirstCompletelyVisibleItemPosition(); mmPosition = layoutManager.findFirstVisibleItemPosition(); seeLastPosition = layoutManager.findLastCompletelyVisibleItemPosition(); LogUtils.i("可见" + seeFirstPostion + "\n" + mmPosition + "\n" + seeLastPosition); } }); //如果第一条不可见 if (seeFirstPostion > 0) { this.getParent().requestDisallowInterceptTouchEvent(true); } else { this.getParent().requestDisallowInterceptTouchEvent(false); } } break; case MotionEvent.ACTION_UP: this.getParent().requestDisallowInterceptTouchEvent(false); break; } super.onTouchEvent(ev); return false; } ``` ```
模仿美团首页布局,实现往上往下滑动可以实现更新加载更多内容,实现中间的菜单和下面的内容可以一起进行滑动并且内容可以加载更多
最近在学习安卓方面的知识,想实现一个类似于美团APP首页的页面布局,一个可以上下滑动的view里,包含有菜单栏(美团里的美食、电影、酒店等等,这些是固定的)和内容栏(下面是具体的一些商品信息,这些信息可以实现动态的加载更多),这两部分是可以一起上下滑动的。我之前试过一个recyclerview或scrollview里面嵌套一个viewpager(显示菜单栏)和一个recyclerview(显示内容),但是测试的时候发现子recyclerview无法加载更多的内容。想咨询下各位大佬怎样解决这样的问题,目的就是菜单栏可以和内容栏一起滑动,并且内容栏可以动态的加载更多内容!谢谢各位大佬!
安卓 自定义ViewPager 自适应高度
如题,ScrollView中嵌套了viewpager,可以上下划和左右划,viewpager中嵌套listview,滑动冲突解决了,却出现了高度不适应问题, 第一页加载正常,第二页内容比第一页少,可是高低却和第一页一样,这样就会出现大片空白区域,第三页。。。。。以此类推。。 viewpager每次加载3个页面,就只会取最大的高度赋值,我该怎么改呢,请大神们帮帮我。 重写了onMeasure @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { int height = 0; int h; for(int i = 0; i < getChildCount(); i++) { View child = getChildAt(i); h = 0; child.measure(widthMeasureSpec, MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED)); h = child.getMeasuredHeight(); if(h > height) height = h; } heightMeasureSpec = MeasureSpec.makeMeasureSpec(height, MeasureSpec.EXACTLY); super.onMeasure(widthMeasureSpec, heightMeasureSpec); } ``` ```
复杂的布局嵌套怎么实现
scrollview+TabLayout,ViewPager+fragment+refreshLayout+listview,前面的嵌套后面的,这种复杂布局怎么处理滑动冲突事件,类似上滑查看详情,最外层是scrollview,上拉的详情是tablayout+viewpager,它里面嵌套fragment,里面又是上拉加载更多的listview
仿淘宝商品详情页的"拖动效果",和拖出来的"导航置顶"滑动导航下的视图
csdn也有demo叫仿淘宝商品详情页 大家不要给我推荐那个,因为那个的布局拖动直接置顶的效果是有,但是放的是图片,没有解决下面放viewpager所出现的问题。现在把下面拖出来的布局换成横向滚动的导航+pager内fragment切换。出现如下问题: viewpager 不显示 解决办法有两种。 第 一种方式是给嵌套pager的scrollview 加android:fillViewport="true" 第二种方式是 viewpager高度设置固定值。 ?但是第一种方式又出现的问题是,滑动到下面布局后 横向导航置顶对 下面内容滑动对 但是向下滑由于走到了viewpager布局的scrollview滚动事件 不走主布局中的scrollview事件了。无法向下滑动拖拽回上一页了。 ?第二种方式出现的问题是, 滑动到下一页后 导航栏不置顶 跟随页面滚动。然后由于pager高度固定的 pager内容显示不全,并且 scrollview和pager 滑动冲突也已经判断滚动xy哪个更大,pager滑动还是不灵敏。
Fragment中的上下滑动事件会被上一个Fragment响应而不是当前的,怎么办
我当前开发一个安卓app,只有一个activity,布局文件是中有一个ViewPager,其适配器绑了三个Fragment。前两个Fragment的布局文件都是最外层SwipeRefreshLayout用于下拉刷新,然后嵌套一个ScrollView,第三个也准备这么弄但是发现问题。**当我进入app默认显示第一个Fragment时,上下滑动屏幕是有滑动效果的,然而切换到第二个Fragment滑动就没效果。接着我发现,当我在第二个Fragment中滑动后,再切换回第一个Fragment,发现反而是第一个Fragment界面响应了我的滑动操作。于是我尝试切换到第三个Fragment,滑动后迅速切换到第二个Fragment,果然其界面正在**滑动。 我并不知道这个原因到底是什么,但我试了一个办法:**通过重载setUserVisibleHint(),一旦离开一个Fragment,直接把整个Fragment设成Invisible,以这种方式,的确实现了滑动操作被当前Fragment响应。**但我还是弄不懂之前为什么会有那样的情况——**在第一个和第二个Fragment中滑动屏幕,都是第一个Fragment响应,在第三个Fragment中滑动屏幕,则是第二个Fragment响应滑动操作。** 我想知道,究竟出了什么问题,是什么原因导致的,我怎么才能解决(不通过设置Visibility的方法强行实现)? Fragment布局文件代码(只给出一个,另一个类似): ``` <?xml version="1.0" encoding="utf-8"?> <android.support.v4.widget.SwipeRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/swipe_article_container" android:layout_width="match_parent" android:layout_height="match_parent"> <ScrollView android:id="@+id/scroll_article_container" android:layout_width="match_parent" android:layout_height="match_parent" android:descendantFocusability="blocksDescendants"> <FrameLayout android:layout_width="match_parent" android:layout_height="match_parent"> <WebView android:id="@+id/articleWebView" android:layout_width="match_parent" android:layout_height="wrap_content" android:alpha="0"/> <ProgressBar android:id="@+id/webViewLoading" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" style="@style/MyProgressBar" android:visibility="gone"/> </FrameLayout> </ScrollView> </android.support.v4.widget.SwipeRefreshLayout> ```
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它是一个过程,是一个不断累积、不断沉淀、不断总结、善于传达自己的个人见解以及乐于分享的过程。
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过...
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 free -m 其中:m表示兆,也可以用g,注意都要小写 Men:表示物理内存统计 total:表示物理内存总数(total=used+free) use...
比特币原理详解
一、什么是比特币 比特币是一种电子货币,是一种基于密码学的货币,在2008年11月1日由中本聪发表比特币白皮书,文中提出了一种去中心化的电子记账系统,我们平时的电子现金是银行来记账,因为银行的背后是国家信用。去中心化电子记账系统是参与者共同记账。比特币可以防止主权危机、信用风险。其好处不多做赘述,这一层面介绍的文章很多,本文主要从更深层的技术原理角度进行介绍。 二、问题引入 假设现有4个人...
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发...
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 演示地点演示 html代码如下` music 这个年纪 七月的风 音乐 ` 然后就是css`*{ margin: 0; padding: 0; text-decoration: none; list-...
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。
数据库优化 - SQL优化
以实际SQL入手,带你一步一步走上SQL优化之路!
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 cpp 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7 p...
通俗易懂地给女朋友讲:线程池的内部原理
餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小型人工智障。 知识可以运用在不同地方,不一定非是天气预报。
经典算法(5)杨辉三角
杨辉三角 是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。
英特尔不为人知的 B 面
从 PC 时代至今,众人只知在 CPU、GPU、XPU、制程、工艺等战场中,英特尔在与同行硬件芯片制造商们的竞争中杀出重围,且在不断的成长进化中,成为全球知名的半导体公司。殊不知,在「刚硬」的背后,英特尔「柔性」的软件早已经做到了全方位的支持与支撑,并持续发挥独特的生态价值,推动产业合作共赢。 而对于这一不知人知的 B 面,很多人将其称之为英特尔隐形的翅膀,虽低调,但是影响力却不容小觑。 那么,在...
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹...
面试官:你连RESTful都不知道我怎么敢要你?
干货,2019 RESTful最贱实践
刷了几千道算法题,这些我私藏的刷题网站都在这里了!
遥想当年,机缘巧合入了 ACM 的坑,周边巨擘林立,从此过上了"天天被虐似死狗"的生活… 然而我是谁,我可是死狗中的战斗鸡,智力不够那刷题来凑,开始了夜以继日哼哧哼哧刷题的日子,从此"读题与提交齐飞, AC 与 WA 一色 ",我惊喜的发现被题虐既刺激又有快感,那一刻我泪流满面。这么好的事儿作为一个正直的人绝不能自己独享,经过激烈的颅内斗争,我决定把我私藏的十几个 T 的,阿不,十几个刷题网...
为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?
关于SQL和ORM的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行了一番讨论,感触还是有一些,于是就有了今天这篇文。 声明:本文不会下关于Mybatis和JPA两个持久层框架哪个更好这样的结论。只是摆事实,讲道理,所以,请各位看官勿喷。 一、事件起因 关于Mybatis和JPA孰优孰劣的问题,争论已经很多年了。一直也没有结论,毕竟每个人的喜好和习惯是大不相同的。我也看...
白话阿里巴巴Java开发手册高级篇
不久前,阿里巴巴发布了《阿里巴巴Java开发手册》,总结了阿里巴巴内部实际项目开发过程中开发人员应该遵守的研发流程规范,这些流程规范在一定程度上能够保证最终的项目交付质量,通过在时间中总结模式,并推广给广大开发人员,来避免研发人员在实践中容易犯的错误,确保最终在大规模协作的项目中达成既定目标。 无独有偶,笔者去年在公司里负责升级和制定研发流程、设计模板、设计标准、代码标准等规范,并在实际工作中进行...
SQL-小白最佳入门sql查询一
不要偷偷的查询我的个人资料,即使你再喜欢我,也不要这样,真的不好;
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
Nginx 原理和架构
Nginx 是一个免费的,开源的,高性能的 HTTP 服务器和反向代理,以及 IMAP / POP3 代理服务器。Nginx 以其高性能,稳定性,丰富的功能,简单的配置和低资源消耗而闻名。 Nginx 的整体架构 Nginx 里有一个 master 进程和多个 worker 进程。master 进程并不处理网络请求,主要负责调度工作进程:加载配置、启动工作进程及非停升级。worker 进程负责处...
【图解经典算法题】如何用一行代码解决约瑟夫环问题
约瑟夫环问题算是很经典的题了,估计大家都听说过,然后我就在一次笔试中遇到了,下面我就用 3 种方法来详细讲解一下这道题,最后一种方法学了之后保证让你可以让你装逼。 问题描述:编号为 1-N 的 N 个士兵围坐在一起形成一个圆圈,从编号为 1 的士兵开始依次报数(1,2,3…这样依次报),数到 m 的 士兵会被杀死出列,之后的士兵再从 1 开始报数。直到最后剩下一士兵,求这个士兵的编号。 1、方...
吐血推荐珍藏的Visual Studio Code插件
作为一名Java工程师,由于工作需要,最近一个月一直在写NodeJS,这种经历可以说是一部辛酸史了。好在有神器Visual Studio Code陪伴,让我的这段经历没有更加困难。眼看这段经历要告一段落了,今天就来给大家分享一下我常用的一些VSC的插件。 VSC的插件安装方法很简单,只需要点击左侧最下方的插件栏选项,然后就可以搜索你想要的插件了。 下面我们进入正题 Material Theme ...
如何防止抄袭PCB电路板
目录 1、抄板是什么 2、抄板是否属于侵权 3、如何防止抄板 1、抄板是什么 抄板也叫克隆或仿制,是对设计出来的PCB板进行反向技术研究;目前全新的定义:从狭义上来说,抄板仅指对电子产品电路板PCB文件的提取还原和利用文件进行电路板克隆的过程;从广义上来说,抄板不仅包括对电路板文件提取、电路板克隆、电路板仿制等技术过程,而且包括对电路板文件进行修改(即改板)、对电子产品外形模具进行三维...
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,...
程序员:我终于知道post和get的区别
是一个老生常谈的话题,然而随着不断的学习,对于以前的认识有很多误区,所以还是需要不断地总结的,学而时习之,不亦说乎
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU...
加快推动区块链技术和产业创新发展,2019可信区块链峰会在京召开
11月8日,由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办,科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。   区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力,电力解决了人类基本的生活需求,互联网彻底改变了信息传递的方式,区块链作为构造信任的技术有重要的价值。   1...
Python 植物大战僵尸代码实现(2):植物卡片选择和种植
这篇文章要介绍的是: - 上方植物卡片栏的实现。 - 点击植物卡片,鼠标切换为植物图片。 - 鼠标移动时,判断当前在哪个方格中,并显示半透明的植物作为提示。
相关热词 c#委托 逆变与协变 c#新建一个项目 c#获取dll文件路径 c#子窗体调用主窗体事件 c# 拷贝目录 c# 调用cef 网页填表c#源代码 c#部署端口监听项目、 c#接口中的属性使用方法 c# 昨天
立即提问