android 上下滑动布局

图片说明
这个是我目前的布局...
还有一些东西需要添加..
但是又放不下 需要做一个可以上下滑动的页面

然后试了scrolview 和系统自带的scroling_active 都是不能放入button.否则就直接闪退..

我是个做web的 这公司要求做app没辙..现学现卖..大伙帮指条明路..

1个回答

ScrollView是只能有一个直接子控件,你用一个控件把你的布局包起来就行了

weixin_41770608
weixin_41770608 DDDDDDDDDDDDD
大约 2 年之前 回复
fakertt
fakertt 测试了一下 可以实现...谢老哥
大约 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Android如何实现整个布局中的一个layout在上下滑动时不动
![图片说明](https://img-ask.csdn.net/upload/201505/12/1431436679_639311.jpg) 如图,蓝色部分是个LinearLayout,如何实现在下边的listview上下滑动时它一直在屏幕顶端......求大神指导
Android布局这种布局,要怎么实现
页面整体可以上下滑动,最上面的两个item还可以左右滑动![图片](https://img-ask.csdn.net/upload/201603/12/1457713125_145666.png)
android 芒果TV HD 的首页布局如何实现
如题,芒果TVHD这个应用的首页,整体可以上下滑动,每一个栏目可以左右滑动,非常流畅,而且互相不冲突,有没有大神指导指导!!![图片说明](https://img-ask.csdn.net/upload/201504/03/1428059366_546509.jpg)
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> ```
一个android展示页面布局设计,求大神解答....
![图片说明](https://img-ask.csdn.net/upload/201504/09/1428572743_673391.png) D区域是一个ListView,也可一不是。 当D区域上下滑动的时候,ABC区域都要跟着滑动,相当与listview的HeadView ,但是D区域要左右滑动,左右滑动的时候B C的选中状态要跟着变化 这个怎么做啊,控件该怎么写,求指导,有Demo链接也行
Android中的 Scroll ListView 和 TextView
我想创建一个布局包含: - textview(标题) - listview 就是说当用户上下滑动滚动条的时候,希望整个画面的内容都一起上下滚动,而不是只滚动listview 里面的内容、如何实现这个功能呢?
模仿美团首页布局,实现往上往下滑动可以实现更新加载更多内容,实现中间的菜单和下面的内容可以一起进行滑动并且内容可以加载更多
最近在学习安卓方面的知识,想实现一个类似于美团APP首页的页面布局,一个可以上下滑动的view里,包含有菜单栏(美团里的美食、电影、酒店等等,这些是固定的)和内容栏(下面是具体的一些商品信息,这些信息可以实现动态的加载更多),这两部分是可以一起上下滑动的。我之前试过一个recyclerview或scrollview里面嵌套一个viewpager(显示菜单栏)和一个recyclerview(显示内容),但是测试的时候发现子recyclerview无法加载更多的内容。想咨询下各位大佬怎样解决这样的问题,目的就是菜单栏可以和内容栏一起滑动,并且内容栏可以动态的加载更多内容!谢谢各位大佬!
如何把所有的布局和 UI 放到一个 ScrollView 中?
程序中有一个大布局,里面有很多小的布局。如何把这个大的布局放到一个scrollview里面,这样的话,当前画面无法显示其它小布局的内容,用户就可以通过上下滚动的方法来查看了。我希望下面的 "borderSeperator" 可以滚动。 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_height="fill_parent" android:layout_width="wrap_content"> <RelativeLayout android:id="@+id/actionbarRelativeLayout" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="@drawable/actionbar_gradient"> <ImageButton android:id="@+id/stocktwitsImageButton" android:layout_width="wrap_content" android:background="@drawable/stocktwits" android:layout_height="wrap_content"></ImageButton> <ImageButton android:layout_width="wrap_content" android:id="@+id/composeImageButton" android:layout_alignParentRight="true" android:layout_height="wrap_content" android:background="@drawable/composebutton"></ImageButton> </RelativeLayout> <RelativeLayout android:layout_height="wrap_content" android:layout_width="fill_parent" android:id="@+id/headerLinearLay" android:orientation="horizontal" android:background="#e8e8e8" android:padding="8px"> <ImageView android:id="@+id/avatarImageView" android:layout_height="48px" android:layout_width="48px"></ImageView> <LinearLayout android:id="@+id/linearLayout3" android:layout_toRightOf="@+id/avatarImageView" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="vertical" android:layout_marginLeft="4dp"> <TextView android:text="TextView" android:textColor="#000000" android:textStyle="bold" android:id="@+id/nameTextView" android:layout_height="wrap_content" android:layout_width="fill_parent"> </TextView> <TextView android:text="TextView" android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/usernameTextView" android:textColor="#000000"></TextView> </LinearLayout> </RelativeLayout> <LinearLayout android:layout_height="1dp" android:layout_width="fill_parent" android:id="@+id/borderSeperator" android:background="#c4c4c4"></LinearLayout> <TextView android:layout_height="wrap_content" android:textSize="24sp" android:layout_width="fill_parent" android:autoLink="web" android:textColor="#000000" android:background="#ffffff" android:padding="8dp" android:id="@+id/bioLabel" android:text="Bio"></TextView> <TextView android:padding="8dp" android:text="TextView" android:layout_height="wrap_content" android:layout_weight="0" android:layout_width="fill_parent" android:textColor="#000000" android:background="#ffffff" android:id="@+id/bioTextView"></TextView> <LinearLayout android:layout_width="fill_parent" android:layout_height="1dp" android:background="#c4c4c4" android:id="@+id/bioSeperator"></LinearLayout> <TextView android:padding="8dp" android:layout_height="wrap_content" android:textSize="24sp" android:layout_width="fill_parent" android:textColor="#000000" android:autoLink="web" android:background="#ffffff" android:id="@+id/locationLabel" android:text="Location"></TextView> <TextView android:padding="8dp" android:text="TextView" android:layout_height="wrap_content" android:layout_weight="0" android:layout_width="fill_parent" android:textColor="#000000" android:background="#ffffff" android:id="@+id/locationTextView"></TextView> <LinearLayout android:layout_width="fill_parent" android:layout_height="1dp" android:background="#c4c4c4" android:id="@+id/locationSeperator"></LinearLayout> <TextView android:padding="8dp" android:layout_height="wrap_content" android:textSize="24sp" android:layout_width="fill_parent" android:textColor="#000000" android:autoLink="web" android:background="#ffffff" android:id="@+id/websiteLabel" android:text="Website"></TextView> <TextView android:padding="8dp" android:text="TextView" android:layout_height="wrap_content" android:layout_weight="0" android:layout_width="fill_parent" android:textColor="#000000" android:background="#ffffff" android:id="@+id/websiteTextView"></TextView> <LinearLayout android:layout_width="fill_parent" android:layout_height="1dp" android:background="#c4c4c4" android:id="@+id/websiteSeperator"></LinearLayout> <LinearLayout android:id="@+id/experienceLayout" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" android:background="#ffffff" android:layout_weight="1"> <TextView android:text="Experience" android:layout_height="wrap_content" android:layout_weight="1" android:layout_width="wrap_content" android:textColor="#000000" android:textStyle="bold" android:id="@+id/experienceLabel"></TextView> <TextView android:text="TextView" android:layout_height="wrap_content" android:layout_weight="0" android:layout_width="wrap_content" android:textColor="#000000" android:id="@+id/experienceTextView"></TextView> </LinearLayout> <LinearLayout android:id="@+id/assetsLayout" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" android:background="#ffffff" android:layout_weight="1"> <TextView android:text="Assets Traded" android:layout_height="wrap_content" android:layout_weight="1" android:layout_width="wrap_content" android:textColor="#000000" android:textStyle="bold" android:id="@+id/assetsLabel"></TextView> <TextView android:text="TextView" android:layout_height="wrap_content" android:layout_weight="0" android:layout_width="wrap_content" android:textColor="#000000" android:id="@+id/assetsTextView"></TextView> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" android:background="#ffffff" android:layout_weight="1" android:id="@+id/approachLayout"> <TextView android:layout_height="wrap_content" android:layout_weight="1" android:layout_width="wrap_content" android:textColor="#000000" android:textStyle="bold" android:id="@+id/approachLabel" android:text="Approach"></TextView> <TextView android:text="TextView" android:layout_height="wrap_content" android:layout_weight="0" android:layout_width="wrap_content" android:textColor="#000000" android:id="@+id/approachTextView"></TextView> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" android:background="#ffffff" android:layout_weight="1" android:id="@+id/riskLayout"> <TextView android:layout_height="wrap_content" android:layout_weight="1" android:layout_width="wrap_content" android:textColor="#000000" android:textStyle="bold" android:id="@+id/riskLabel" android:text="Risk Profile"></TextView> <TextView android:text="TextView" android:layout_height="wrap_content" android:layout_weight="0" android:layout_width="wrap_content" android:textColor="#000000" android:id="@+id/riskTextView"></TextView> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" android:background="#ffffff" android:layout_weight="1" android:id="@+id/holdingPeriodLayout"> <TextView android:layout_height="wrap_content" android:layout_weight="1" android:layout_width="wrap_content" android:textColor="#000000" android:textStyle="bold" android:id="@+id/holdingPeriodLabel" android:text="Holding Period"></TextView> <TextView android:text="TextView" android:layout_height="wrap_content" android:layout_weight="0" android:layout_width="wrap_content" android:textColor="#000000" android:id="@+id/holdingPeriodTextView"></TextView> </LinearLayout> </LinearLayout>
安卓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>
android--ScrollView和Gesture冲突。谢谢
我用一个ScrollView包含了整个布局,就是可以上下滑动,现在要用手势左右滑动跳转不同的acticity 实现不了。好像是冲突了。求高手帮忙。谢谢。
适配Android5.0系统遇到的问题
我实现了SlidingMenu左侧划菜单,内部布局是ExpandAbleListView,但是,运行的时候只有三星5.0以上版本会出现左菜单不能上下滑动,大家有人遇到过这样的问题吗,求解!祈求各位大牛支支招,本人实在不知如何解,非常感谢
RelativeLayout 中两个上下view的触摸事件分发(不是子view和父view的关系)
有个RelativeLayout布局 ```<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:weather="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/mainview_id"> <android.support.v4.view.ViewPager android:id="@+id/main_viewpager" android:layout_width="match_parent" android:layout_height="match_parent" /> <PushPullDoorView android:id="@+id/pull_down_view" android:layout_width="match_parent" android:layout_height="match_parent" > </PushPullDoorView> ``` 其中PushPullDoorView是一个背景为透明的,实现上拉下拽(类似于抽屉效果的控件),可是这样布局后,发现底层的ViewPager不能响应左右滑动事件。有哪个大牛可以帮忙解答下吗?我试过重写 PushPullDoorView 的dispatchTouchEvent,onInterceptTouchEvent,可是都没有实现把PushPullDoorView 的触摸事件分发到底层ViewPage中
Android问题,用ListView做了个二级列表,但是这个二级列表不能铺满全屏
![图片说明](https://img-ask.csdn.net/upload/201709/14/1505383475_61974.png) 如图所示,可以上下滚动,但是这有红框内的范围。下面和右边是空白的什么也没有。 这是怎么回事。 ![![图片说明](https://img-ask.csdn.net/upload/201709/14/1505383638_203608.png)图片说明](https://img-ask.csdn.net/upload/201709/14/1505383632_238489.png) 这是我的layout下的xml布局。 实在不知道原因,求解各位大神,谢谢。
horizontalScrollview与百度地图滑动事件的冲突问题
![图片说明](https://img-ask.csdn.net/upload/201512/08/1449561370_342323.png) 我做了一个仿qq侧滑的效果,上图是布局的框架,但是里面的百度地图左右滑动不了,上上下滑动也有问题,比较卡,求大神指点一下
安卓 布局 蠢新 看一眼 看一眼 (ρ_・).。
午 好 局部代码: <?xml version="1.0" encoding="utf-8"?> <HorizontalScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@color/background_user" android:orientation="vertical" > <ScrollView android:layout_width="match_parent" android:layout_height="match_parent" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="12dp" android:orientation="horizontal" > <LinearLayout android:id="@+id/shipperL2" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:layout_weight="1" > <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/shipper" /> </LinearLayout> <LinearLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="5" android:orientation="vertical" > <TextView android:layout_width="fill_parent" android:layout_height="0dp" android:layout_weight="1" android:gravity="center_vertical" android:text="班级" android:textColor="@color/black" /> <TextView android:layout_width="fill_parent" android:layout_height="0dp" android:layout_weight="1" android:gravity="center_vertical" android:text="学生信息" android:textColor="@color/black" /> </LinearLayout> </LinearLayout> ... 就这样 重复很多个 结果 滑动的效果是左右滑动的 而且图标和文字之间距离很大 很大 T_T 我 该怎么调整 让它变成上下滑动的效果 而且 写了十几个linearlayout 界面上就显示了7个 为啥??? 在线 等等等
Notification的通知栏滑动事件
大家好,先说下问题。今天我写了个Notification的demo,发现自定义布局比较大时,如果该通知没有在顶部显示,将被压缩成Notification默认的64dp高度,导致部分布局显示不全,然后上下滑动该通知时,通知就能够全部显示了,当该通知滑动到小于等于64dp高度时,又会出现布局显示不全。 我想做成酷狗音乐的通知栏样子,就是当通知没有显示在顶部时,或者在滑动过程中发现通知高度小于等于64dp时,使用适配64dp的较小布局;当通知在顶部显示时,或者滑动后大于64dp时,使用完整的大布局。我的notification和酷狗的比较如下图所示。 ![图片说明](https://img-ask.csdn.net/upload/201803/12/152085![图片说明](https://img-ask.csdn.net/upload/201803/12/152085537![图片说明](https://img-ask.csdn.net/upload/201803/12/1520855386_695426.png)6_724873.png)5367_720447.png)
ScrollView嵌套ListView的显示不全及滑动问题
**需求描述:**要在一个页面显示比较多的数据,如:旅图详情页面需要显示旅图照片、评论列表等等内容;而且页面可以上下滑动;当个人动态列表滑动到底部时,可以加载更多的评论。 如图-1: ![旅图详情页](https://img-ask.csdn.net/upload/201605/25/1464152136_262352.png) **思路分析:**因为要在一个页面显示较多的数据,且还有评论列表这样的模块,一下子想到使用ScrollView嵌套ListView,ScrollView可以上下滚动,ListView用于加载评论列表。 **发现的问题:**按照上面的思路,我做了尝试,发现两个问题:1) ListView显示不全:ListView只显示第一个。2) ListView不能上下滑动。 解决尝试:经过一番搜索,看到网上有这样的一些解决办法,本人都一一拿来尝试: a) 在ScrollView的布局文件中加入配置android:fillViewport="true",试下来后发现ListView能显示的大一些了,充满了屏幕,但是还是不能滑动显示全部的评论。 b) 用代码设置ListView的高度,即根据ListView中item数目的个数设置ListView的高度,这样滑动屏幕就能将看到所有评论。 但问题又来了:因为评论数据可能会很多,现在的做法是进入旅图详情页面时,只展示部分评论,当页面下拉到最后一条评论时,通过“上拉加载更多”的滑动方式去查询更多评论,但是发现滑动不了,ListView滑动不了。为此又经过了一番的搜索,是因为ViewGroup的事件拦截和触发机制的原因,当然可给出了一些方法,为此又做了一些尝试: c) 重写ScrollView的onInterceptTouchEvent()方法,直接返回false,即可将屏幕事件传递给子View,即可响应事件。 那么问题又来了,我只能把触摸点放在评论区域内,才能下拉加载更多,能不能触摸点在评论列表之外时,也能使评论区域上拉加载更多?另外如果想要使触摸屏幕上的任何一个点都可以往上滑动,该怎么做?因为发现当触摸点在评论列表上时,不能往上滑动,显示效果如图-2: ![评论列表](https://img-ask.csdn.net/upload/201605/25/1464151537_923980.png) 。 其实我最终想要实现的目标就像是微博的具体内容展示页那样。 当然看到网上也有推荐不要用ScrollView嵌套,而使用ListView的header。 再此,希望高手能帮忙解答下!!!
哪位做过类似android天猫APP首页的产品数据分段的RecyclerView的页面?
我模仿天猫首页,本来这个首页fragment里的布局都是分开的:最外面是Scrollview、上面搜索框、轮播图、下面一个RecycleView(由于RecycleView本身没有分段头脚的概念,在网上找了一个开源的http://www.open-open.com/lib/view/open1437613826490.html )、底部菜单栏用的RadioGroup,但这样发现Scrollview和开源用的SectionedRecyclerView上下滚动冲突,就想换个解决方案:把SectionedRecyclerView上面的所有部分作为Header,下面产品数据分段RecyclerView的android页面不变、但作为该RecyclerView的唯一一个Item对待,但由于开源的SectionedRecyclerView中自定义的adapter占用了override的一些方法比如getItemViewType和onCreateViewHolder了,我在这个adapter里面无法参考这种方式http://blog.csdn.net/qibin0506/article/details/49716795 去添加识别Header部分的代码、有冲突,哪位大神帮忙解决下啊~~我的QQ:602231903,不胜感激~
关于ViewPager+GridView,实现GridView横向水平滑动的的问题
在网上看了好多DEMO效果都不是想要的然后发现了这个例子下面贴出来 package com.example.bmvod.myapplication; import android.app.Activity; import android.os.Bundle; import android.support.v4.view.PagerAdapter; import android.support.v4.view.ViewPager; import android.support.v4.view.ViewPager.OnPageChangeListener; import android.util.DisplayMetrics; import android.view.View; import android.view.ViewGroup; import android.view.ViewGroup.LayoutParams; import android.widget.BaseAdapter; import android.widget.GridView; import android.widget.ImageView; import android.widget.LinearLayout; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.concurrent.atomic.AtomicInteger; public class MainActivity extends Activity { private LinearLayout linear01; private LinearLayout linear02; private List<Map<String, Object>> listView; private int next = 0; private ViewPager adViewPager; private AdPageAdapter adapter; private ImageView[] imageViews; private ImageView imageView; private AtomicInteger atomicInteger = new AtomicInteger(0); private boolean isContinue = true; private List<View> gridViewlist = new ArrayList<View>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initView(); } private void initView() { System.out.println("initView()"); linear01 = (LinearLayout) findViewById(R.id.view_pager_content); linear02 = (LinearLayout) findViewById(R.id.viewGroup); listView = new ArrayList<Map<String, Object>>(); //创建ViewPager adViewPager = new ViewPager(this); //获取屏幕像素相关信息 DisplayMetrics dm = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); //根据屏幕信息设置ViewPager广告容器的宽高 //adViewPager.setLayoutParams(new LayoutParams(dm.widthPixels, dm.heightPixels)); //将ViewPager容器设置到布局文件父容器中 linear01.addView(adViewPager); getView(); initCirclePoint(); adViewPager.setAdapter(adapter); adViewPager.addOnPageChangeListener(new AdPageChangeListener()); } /** * ViewPager 页面改变监听器 */ private final class AdPageChangeListener implements OnPageChangeListener { /** * 页面滚动状态发生改变的时候触发 */ @Override public void onPageScrollStateChanged(int arg0) { } /** * 页面滚动的时候触发 */ @Override public void onPageScrolled(int arg0, float arg1, int arg2) { } /** * 页面选中的时候触发 */ @Override public void onPageSelected(int arg0) { //获取当前显示的页面是哪个页面 System.out.println("onPageSelected"); atomicInteger.getAndSet(arg0); //重新设置原点布局集合 for (int i = 0; i < imageViews.length; i++) { imageViews[arg0].setBackgroundResource(R.drawable.point_focused); if (arg0 != i) { imageViews[i].setBackgroundResource(R.drawable.point_unfocused); } } } } private void initCirclePoint() { System.out.println("initCirclePoint()"); imageViews = new ImageView[gridViewlist.size()]; //广告栏的小圆点图标 for (int i = 0; i < gridViewlist.size(); i++) { //创建一个ImageView, 并设置宽高. 将该对象放入到数组中 imageView = new ImageView(this); LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.MATCH_PARENT); layoutParams.setMargins(10, 0, 10, 0); imageView.setLayoutParams(layoutParams); imageViews[i] = imageView; //初始值, 默认第0个选中 if (i == 0) { imageViews[i].setBackgroundResource(R.drawable.point_focused); } else { imageViews[i].setBackgroundResource(R.drawable.point_unfocused); } //将小圆点放入到布局中 linear02.addView(imageViews[i]); } } private void getView() { int[] intView = {R.drawable.one, R.drawable.two, R.drawable.three, R.drawable.four, R.drawable.five, R.drawable.six, R.drawable.seven, R.drawable.eight, R.drawable.nine, R.drawable.ten , R.drawable.eleven, R.drawable.twelve, R.drawable.thirteen, R.drawable.fourteen, R.drawable.fifteen, R.drawable.sixteen, R.drawable.seventeen}; for (int i = 0; i < intView.length; i++) { Map<String, Object> mapView = new HashMap<String, Object>(); mapView.put("image", intView[i]); listView.add(mapView); } getGridView(); } private void getGridView() { boolean bool = true; while (bool) { int result = next + 9; if (listView.size() != 0 && result < listView.size()) { GridView gridView = new GridView(this); gridView.setNumColumns(5); gridView.setVerticalSpacing(30); gridView.setHorizontalSpacing(0); List<Map<String, Object>> gridlist = new ArrayList<Map<String, Object>>(); for (int i = next; i < result; i++) { gridlist.add(listView.get(i)); } MyAdapter myAdapter = new MyAdapter(gridlist); gridView.setAdapter(myAdapter); next = result; gridViewlist.add(gridView); } else if (result - listView.size() <= 9) { System.out.println("剩余多少" + (result - listView.size())); List<Map<String, Object>> gridlist = new ArrayList<Map<String, Object>>(); for (int i = next; i < listView.size(); i++) { gridlist.add(listView.get(i)); } GridView gridView = new GridView(this); gridView.setNumColumns(5); MyAdapter myAdapter = new MyAdapter(gridlist); gridView.setAdapter(myAdapter); next = listView.size() - 1; gridViewlist.add(gridView); bool = false; } else { bool = false; } } adapter = new AdPageAdapter(gridViewlist); } private final class AdPageAdapter extends PagerAdapter { private List<View> views = null; /** * 初始化数据源, 即View数组 */ public AdPageAdapter(List<View> views) { this.views = views; } /** * 从ViewPager中删除集合中对应索引的View对象 */ @Override public void destroyItem(View container, int position, Object object) { ((ViewPager) container).removeView(views.get(position)); } /** * 获取ViewPager的个数 */ @Override public int getCount() { return views.size(); } /** * 从View集合中获取对应索引的元素, 并添加到ViewPager中 */ @Override public Object instantiateItem(View container, final int position) { ((ViewPager) container).addView(views.get(position), 0); // views.get(position).setOnClickListener(new OnClickListener() { // // @Override // public void onClick(View v) { // System.out.println("position"+position); // Intent intent=new Intent(MainActivity.this,OtherViewPage.class); // MainActivity.this.startActivity(intent); // } // }); return views.get(position); } /** * 是否将显示的ViewPager页面与instantiateItem返回的对象进行关联 * 这个方法是必须实现的 */ @Override public boolean isViewFromObject(View view, Object object) { return view == object; } } private class MyAdapter extends BaseAdapter { List<Map<String, Object>> listgrid; private MyAdapter(List<Map<String, Object>> listgrid) { this.listgrid = listgrid; } @Override public int getCount() { return listgrid.size(); } @Override public Object getItem(int position) { return listgrid.get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { convertView = getLayoutInflater().inflate(R.layout.grid_view_item, null); ImageView getViewLinear = (ImageView) convertView.findViewById(R.id.getViewLinear); getViewLinear.setBackgroundResource(Integer.parseInt(listgrid.get(position).get("image").toString())); return convertView; } } } ``` ``` 只有两个布局文件一个只有上下两个布局里面的ViewPager和小圆点都写在代码里,另一个就是GRIDVIEW的ITEM 经过测试 gridView.setVerticalSpacing(30);只对当前页有效 翻到第二页上下两个图片间距为0,,,gridView.setHorizontalSpacing(5);无效!求解啊!!!!!
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过...
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
小白学 Python 爬虫(25):爬取股票信息
人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Linux基础入门 小白学 Python 爬虫(4):前置准备(三)Docker基础入门 小白学 Python 爬虫(5):前置准备(四)数据库基础 小白学 Python 爬虫(6):前置准备(...
卸载 x 雷某度!GitHub 标星 1.5w+,从此我只用这款全能高速下载工具!
作者 | Rocky0429 来源 | Python空间 大家好,我是 Rocky0429,一个喜欢在网上收集各种资源的蒟蒻… 网上资源眼花缭乱,下载的方式也同样千奇百怪,比如 BT 下载,磁力链接,网盘资源等等等等,下个资源可真不容易,不一样的方式要用不同的下载软件,因此某比较有名的 x 雷和某度网盘成了我经常使用的工具。 作为一个没有钱的穷鬼,某度网盘几十 kb 的下载速度让我...
世界上最牛的网络设备,价格低廉,其貌不扬......
夜深人静,电视和电脑都已经关机休息,但是我还在默默工作,我安静地趴在你家中的某个地方,7*24小时不眠不休,任劳任怨,目的只有一个,能让你舒服地躺在床上,畅快地刷手机!没错,这就是我,...
《面试宝典》2019年springmvc面试高频题(java)
前言 2019即将过去,伴随我们即将迎来的又是新的一年,过完春节,马上又要迎来新的金三银四面试季。那么,作为程序猿的你,是否真的有所准备的呢,亦或是安于本职工作,继续做好手头上的事情。 当然,不论选择如何,假如你真的准备在之后的金三银四跳槽的话,那么作为一个Java工程师,就不可不看了。如何在几个月的时间里,快速的为即将到来的面试进行充分的准备呢? 1、什么是Spring MVC ?简单...
一名大专同学的四个问题
【前言】   收到一封来信,赶上各种事情拖了几日,利用今天要放下工作的时机,做个回复。   2020年到了,就以这一封信,作为开年标志吧。 【正文】   您好,我是一名现在有很多困惑的大二学生。有一些问题想要向您请教。   先说一下我的基本情况,高考失利,不想复读,来到广州一所大专读计算机应用技术专业。学校是偏艺术类的,计算机专业没有实验室更不用说工作室了。而且学校的学风也不好。但我很想在计算机领...
复习一周,京东+百度一面,不小心都拿了Offer
京东和百度一面都问了啥,面试官百般刁难,可惜我全会。
轻松搭建基于 SpringBoot + Vue 的 Web 商城应用
首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传。函数计算准备计算资源,并以弹性伸缩的方式运行用户代码,而用户只需根据实际代码运行所消耗的资源进行付费。Fun: Fun 是一个用于支持 Serverless 应用部署的工具,能帮助您便捷地管理函数计算、API ...
Python+OpenCV实时图像处理
目录 1、导入库文件 2、设计GUI 3、调用摄像头 4、实时图像处理 4.1、阈值二值化 4.2、边缘检测 4.3、轮廓检测 4.4、高斯滤波 4.5、色彩转换 4.6、调节对比度 5、退出系统 初学OpenCV图像处理的小伙伴肯定对什么高斯函数、滤波处理、阈值二值化等特性非常头疼,这里给各位分享一个小项目,可通过摄像头实时动态查看各类图像处理的特点,也可对各位调参、测试...
2020年一线城市程序员工资大调查
人才需求 一线城市共发布岗位38115个,招聘120827人。 其中 beijing 22805 guangzhou 25081 shanghai 39614 shenzhen 33327 工资分布 2020年中国一线城市程序员的平均工资为16285元,工资中位数为14583元,其中95%的人的工资位于5000到20000元之间。 和往年数据比较: yea...
为什么猝死的都是程序员,基本上不见产品经理猝死呢?
相信大家时不时听到程序员猝死的消息,但是基本上听不到产品经理猝死的消息,这是为什么呢? 我们先百度搜一下:程序员猝死,出现将近700多万条搜索结果: 搜索一下:产品经理猝死,只有400万条的搜索结果,从搜索结果数量上来看,程序员猝死的搜索结果就比产品经理猝死的搜索结果高了一倍,而且从下图可以看到,首页里面的五条搜索结果,其实只有两条才是符合条件。 所以程序员猝死的概率真的比产品经理大,并不是错...
毕业5年,我问遍了身边的大佬,总结了他们的学习方法
我问了身边10个大佬,总结了他们的学习方法,原来成功都是有迹可循的。
python爬取百部电影数据,我分析出了一个残酷的真相
2019年就这么匆匆过去了,就在前几天国家电影局发布了2019年中国电影市场数据,数据显示去年总票房为642.66亿元,同比增长5.4%;国产电影总票房411.75亿元,同比增长8.65%,市场占比 64.07%;城市院线观影人次17.27亿,同比增长0.64%。 看上去似乎是一片大好对不对?不过作为一名严谨求实的数据分析师,我从官方数据中看出了一点端倪:国产票房增幅都已经高达8.65%了,为什...
推荐10个堪称神器的学习网站
每天都会收到很多读者的私信,问我:“二哥,有什么推荐的学习网站吗?最近很浮躁,手头的一些网站都看烦了,想看看二哥这里有什么新鲜货。” 今天一早做了个恶梦,梦到被老板辞退了。虽然说在我们公司,只有我辞退老板的份,没有老板辞退我这一说,但是还是被吓得 4 点多都起来了。(主要是因为我掌握着公司所有的核心源码,哈哈哈) 既然 4 点多起来,就得好好利用起来。于是我就挑选了 10 个堪称神器的学习网站,推...
这些软件太强了,Windows必装!尤其程序员!
Windows可谓是大多数人的生产力工具,集娱乐办公于一体,虽然在程序员这个群体中都说苹果是信仰,但是大部分不都是从Windows过来的,而且现在依然有很多的程序员用Windows。 所以,今天我就把我私藏的Windows必装的软件分享给大家,如果有一个你没有用过甚至没有听过,那你就赚了????,这可都是提升你幸福感的高效率生产力工具哦! 走起!???? NO、1 ScreenToGif 屏幕,摄像头和白板...
阿里面试一个ArrayList我都能跟面试官扯半小时
我是真的没想到,面试官会这样问我ArrayList。
曾经优秀的人,怎么就突然不优秀了。
职场上有很多辛酸事,很多合伙人出局的故事,很多技术骨干被裁员的故事。说来模板都类似,曾经是名校毕业,曾经是优秀员工,曾经被领导表扬,曾经业绩突出,然而突然有一天,因为种种原因,被裁员了,...
大学四年因为知道了这32个网站,我成了别人眼中的大神!
依稀记得,毕业那天,我们导员发给我毕业证的时候对我说“你可是咱们系的风云人物啊”,哎呀,别提当时多开心啦????,嗯,我们导员是所有导员中最帅的一个,真的???? 不过,导员说的是实话,很多人都叫我大神的,为啥,因为我知道这32个网站啊,你说强不强????,这次是绝对的干货,看好啦,走起来! PS:每个网站都是学计算机混互联网必须知道的,真的牛杯,我就不过多介绍了,大家自行探索,觉得没用的,尽管留言吐槽吧???? 社...
2020年1月中国编程语言排行榜,python是2019增长最快编程语言
编程语言比例 排名 编程语言 最低工资 工资中位数 最低工资 最高工资 人头 人头百分比 1 rust 20713 17500 5042 46250 480 0.14% 2 typescript 18503 22500 6000 30000 1821 0.52% 3 lua 18150 17500 5250 35000 2956 0.84% 4 go 17989 16...
看完这篇HTTP,跟面试官扯皮就没问题了
我是一名程序员,我的主要编程语言是 Java,我更是一名 Web 开发人员,所以我必须要了解 HTTP,所以本篇文章就来带你从 HTTP 入门到进阶,看完让你有一种恍然大悟、醍醐灌顶的感觉。 最初在有网络之前,我们的电脑都是单机的,单机系统是孤立的,我还记得 05 年前那会儿家里有个电脑,想打电脑游戏还得两个人在一个电脑上玩儿,及其不方便。我就想为什么家里人不让上网,我的同学 xxx 家里有网,每...
史上最全的IDEA快捷键总结
现在Idea成了主流开发工具,这篇博客对其使用的快捷键做了总结,希望对大家的开发工作有所帮助。
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
谁是华为扫地僧?
是的,华为也有扫地僧!2020年2月11-12日,“养在深闺人不知”的华为2012实验室扫地僧们,将在华为开发者大会2020(Cloud)上,和大家见面。到时,你可以和扫地僧们,吃一个洋...
Idea 中最常用的10款插件(提高开发效率),一定要学会使用!
学习使用一些插件,可以提高开发效率。对于我们开发人员很有帮助。这篇博客介绍了开发中使用的插件。
AI 没让人类失业,搞 AI 的人先失业了
最近和几个 AI 领域的大佬闲聊 根据他们讲的消息和段子 改编出下面这个故事 如有雷同 都是巧合 1. 老王创业失败,被限制高消费 “这里写我跑路的消息实在太夸张了。” 王葱葱哼笑一下,把消息分享给群里。 阿杰也看了消息,笑了笑。在座几位也都笑了。 王葱葱是个有名的人物,21岁那年以全额奖学金进入 KMU 攻读人工智能博士,累计发表论文 40 余篇,个人技术博客更是成为深度学习领域内风向标。 ...
2020年,冯唐49岁:我给20、30岁IT职场年轻人的建议
点击“技术领导力”关注∆每天早上8:30推送 作者|Mr.K 编辑| Emma 来源|技术领导力(ID:jishulingdaoli) 前天的推文《冯唐:职场人35岁以后,方法论比经验重要》,收到了不少读者的反馈,觉得挺受启发。其实,冯唐写了不少关于职场方面的文章,都挺不错的。可惜大家只记住了“春风十里不如你”、“如何避免成为油腻腻的中年人”等不那么正经的文章。 本文整理了冯...
工作十年的数据分析师被炒,没有方向,你根本躲不过中年危机
2020年刚刚开始,就意味着离职潮高峰的到来,我身边就有不少人拿着年终奖离职了,而最让我感到意外的,是一位工作十年的数据分析师也离职了,不同于别人的主动辞职,他是被公司炒掉的。 很多人都说数据分析是个好饭碗,工作不累薪资高、入门简单又好学。然而今年34的他,却真正尝到了中年危机的滋味,平时也有不少人都会私信问我: 数据分析师也有中年危机吗?跟程序员一样是吃青春饭的吗?该怎么保证自己不被公司淘汰...
作为一名大学生,如何在B站上快乐的学习?
B站是个宝,谁用谁知道???? 作为一名大学生,你必须掌握的一项能力就是自学能力,很多看起来很牛X的人,你可以了解下,人家私底下一定是花大量的时间自学的,你可能会说,我也想学习啊,可是嘞,该学习啥嘞,不怕告诉你,互联网时代,最不缺的就是学习资源,最宝贵的是啥? 你可能会说是时间,不,不是时间,而是你的注意力,懂了吧! 那么,你说学习资源多,我咋不知道,那今天我就告诉你一个你必须知道的学习的地方,人称...
那些年,我们信了课本里的那些鬼话
教材永远都是有错误的,从小学到大学,我们不断的学习了很多错误知识。 斑羚飞渡 在我们学习的很多小学课文里,有很多是错误文章,或者说是假课文。像《斑羚飞渡》: 随着镰刀头羊的那声吼叫,整个斑羚群迅速分成两拨,老年斑羚为一拨,年轻斑羚为一拨。 就在这时,我看见,从那拨老斑羚里走出一只公斑羚来。公斑羚朝那拨年轻斑羚示意性地咩了一声,一只半大的斑羚应声走了出来。一老一少走到伤心崖,后退了几步,突...
立即提问