ScrollView可以嵌套其他视图组件,例如TextView、ImageView等,以实现滚动展示更多内容。它对于需要显示较长文本、图片或其他可滚动内容的界面非常有用。...二 ScrollView使用方法 在XML布局文件中定义ScrollView容器。在需要可滚动内容的区域内添加ScrollView标签,并指定其宽度、高度以及其他属性。...常见方法: scrollTo(int x, int y):将ScrollView滚动到指定的位置,参数x和y分别代表目标位置的水平和垂直偏移量。...smoothScrollTo(int x, int y):平滑地将ScrollView滚动到指定的位置,会有滚动动画效果。.../> 五 总结 由于ScrollView一次性将全部内容加载到内存中,对于特别庞大的视图可能会导致性能问题。
Android平台框架中为我们提供了诸如ListView、GirdView、ScrollView、RecyclerView等滚动视图控件,这几个视图控件也是我们平常使用最多的。...R.layout.activity_centerlockhorizontalscrollview); bindData(); setUIRef(); bindHZSWData(); } //将集合中的数据绑定到...) findViewById(R.id.testTextView); } //将字符串数组与集合绑定起来 private void bindData() { /...testTextView.setText(s); } 为了展示显示效果,将每次item中的text设置到界面中,进行显示,运行效果如图: 三、上代码,具体实现图片类的横向布局 (1)主布局文件...) findViewById(R.id.testTextView); } //将字符串数组中的数据加入到集合当中 private void bindData() {
原项目为了方便直接获取到 TextView 的边界值,直接在 TextView 的外层套了一个 Scrollview,方便实时获取到 TextView 的坐标。 ?...结果又发现如果 TextView 在一个 Scrollview 里面的时候,如果 Scrollview 发生滚动,悬浮窗应该自动 dismiss; 那再改改,滚动状态获取不到啊,那不如让 TextView...每个 TextView 在使用的时候,外面都套了一个 ScrollView,这要是接入这控件的界面有多个 TextView,界面估计要卡到爆。...第三步:抽出 SelectionInfo,封装高亮显示的文本信息,包括文本的起始坐标,结束坐标,文本长度,高亮的背景颜色,在整个 TextView 文本的位置等。 ?...最后 从改为使用 PopupWindow 开始,我们已经解决了界面中多 TextView 弹出多个悬浮窗的问题。
前言 小伙伴们,在上文中我们介绍了Android视图组件ScrollView,本文我们继续盘点,介绍一下视图控件的HorizontalScrollView。...一 HorizontalScrollView基本介绍 HorizontalScrollView是Android SDK中的一个视图容器,它允许用户在水平方向上滚动其子视图。...android:layout_height="match_parent" android:text="这是第一段水平滚动的文本。"...:layout_height="match_parent" android:text="这是最后一段水平滚动的文本。"...fullScroll(int direction):滚动到指定方向的边界。
先在ScrollView中放一个LinearLayout,然后把我们要显示的滚轮中的每一项再加入到这个LinearLayout中即可。...: 我们先来知道一个东西,如何让他每次滚动是滚一个Item呢,而不是说直接卡在一半,就是说我直接划动一部分距离,然后ScrollView中的内容就显示成下面这个图: ?...滚动的时候是平缓的而不是立即滚动到某处)。...用力的滑动后放开: 这时候在监听MotionEvent.ACTION_UP事件的时候,你如果获取了getScrollY的值,判定当前滑动到了这个位置是不准确的,为什么,因为ScrollView还有因为惯性在滑动...我们在外界往我们的自定义ScrollView中传入列表数据,我这里用了普通的字符串: (代码里面的数据头和尾巴补上偏移值上面刚讲过,大家应该还记得 ) public void setItems(List
)和纵向滚动视图(ScrollView),今天主要研究纵向的。...相信大家在开发中经常用到,ScrollView的功能已经很强大了,但是仍然满足不了我们脑洞大开的UI设计师们,所以我们要自定义…本篇文章主要讲监听ScrollView的滑动实现仿QQ空间标题栏渐变,先看一下效果图...中可看的这个效果 android:scrollY 以像素为单位设置垂直方向滚动的的偏移值 android:scrollbarAlwaysDrawHorizontalTrack 设置是否始终显示垂直滚动条...ScrollView滑动监听: Google并没有给我们提供ScrollView的滑动距离、是否滑动到布局底部、顶部的方法,但是提供了一个onScrollChanged方法: @Override...//滑动到banner下面设置普通颜色 textView.setBackgroundColor(Color.argb((int) 255, 144,151,166));
在大众点评团购中,有这样一个效果. 在具体的团购页面中商家图片下有一个购买条,当用户滚动团购详情界面的时候,购买条会停留在界面的最上方....下面说一下具体的实现思路: 从这张图,我们可以看下具体的布局.实际上在最顶部的位置,有一个购买条1,最开始的时候是隐藏的,而当从上向下滑动到具体位置的时候将购买条1显示,将购买条2隐藏....相反,当滑动回来的时候,讲购买条2显示,将购买条1隐藏....核心的部分就是我们要去根据ScrollView的滑动高度去控制购买条的显示与隐藏.这里要注意的就是一定要判断好这个滑动的高度,否则会出现不平滑的效果,影响用户体验....看一下这张图(画得很丑,希望大家不介意),当上面的原始视图滑动到这个位置时,也就是刚好原来上面的部分留在界面中的刚好是购买条的高度时,我们需要将隐藏的购买条显示出来,再将原来的购买条隐藏,这样子就不会有突兀的效果
控件类:包括从View类派生出的各类控件,包括TextView、ImageView、Button等及它们的派生类。控件类可操作dispatchTouchEvent和onTouchEvent。...滑动冲突的处理 app功能多起来之后,页面上有多个控件是可以滑动的,比如说ScrollView、下拉刷新、ViewFlipper、ViewPager等等,有的需要处理上下滑动手势,有的需要处理左右滑动手势...2、在底层控件中,如果当前手势还未处理完成,那么必须阻止上级视图的手势拦截。...View类中操纵滑动的方法有两个: scrollTo : 将控件滑动到指定坐标位置 scrollBy : 将控件滑动指定偏移量。...查看源码会发现scrollBy内部就是调用scrollTo,当然得先把当前坐标加上偏移量,从而得到滑动后的绝对坐标。 视图滑动例子 下面是一个简单滑动TextView的效果图: ?
[4]; // 初始化每个条目描述的文本 tv_des[0] = (TextView) view.findViewById(R.id.des_tv_1); tv_des[1] = (TextView...* @return */ public int getShortMeasureHeight(){ // 复制一个新的TextView 用来测量,最好不要在之前的TextView测量 有可能影响其它代码执行...(widthMeasureSpec, heightMeasureSpec); return textView.getMeasuredHeight(); } /** * 获取TextView 自己本身的高度...scrollView;// scrollView.scrollTo(0, scrollView.getMeasuredHeight()) /** * 获取到界面的ScollView,这样可以点箭头时就到了最后...(0, scrollView.getMeasuredHeight());// 让scrollView 移动到最下面 } }); animator.addListener(new AnimatorListener
一.自定义LycicView extends ScrollView 里面包括一个空白布局,高度是LycicView的一半,再是一个布局存放歌词的,最后是一个空白布局高度是LycicView的一半。...这里动态的向第二个布局里面添加了显示歌词的TextView,并利用ViewTreeObserver得到每个textview的高度,方便知道每个textview歌词所要滑动到的高度。...= new ArrayList<String ();//每行歌词文本集合,建议先去看看手机音乐里的歌词格式和内容 ArrayList<Long lyricTimeList = new ArrayList...());//将高度添加到对应的item位置 } }); lycicList.addView(textView); lyricItems.add(index,textView); } } } /** *...滚动到index位置 */ public void scrollToIndex(int index){ if(index < 0){ scrollTo(0,0); } //计算index对应的textview
因此需要一个类将各个单选按钮包含在一起。...此程序使用 RadioGroup 将几个单选按钮组织在一起,RadioGroup 的扩展关系如下: => android.view.View => android.view.ViewGroup...源文件 ScrollView2.java 中的主要内容如下所示: public class ScrollView2 extends Activity { @Override...,在其中用循环的方式增加了若干组(2-64)文本框和按钮,这样就形成了一个在界面上的长列表。...本例子的第一组文本框和按钮是在布局文件中指定的,其他是在代码中指定的。
看来这种方法不可行… 于是,便开始了我的自定义之路~~~~ 先看效果图: 这是纯文本的TextView ? 这是富文本的TextView ? 02 — 分析 ?...要实现以上需求,应该从这几个方面入手: 文本展示,普通文本调用TextView的setText方法既可,如果是富文本,就使用TextView的fromHtml方法,至于图片如何展示,我在上一篇文章用TextView...,继续下次循环; 如果结束位置在此行,则添加开始位置为本行开始位置,结束位置为自己结束位置的对象到集合中; 否则,将整行填入集合。...这里需要注意,如果TextView外层被ScrollView包裹,在弹框是就需要纵轴方向上减去ScrollView的偏移量。...也就是TextView需要知道ScrollView的纵向偏移量,这里我设置了方法,将ScrollView的偏移量传入。 ?
Android 中ViewPager中使用WebView的注意事项 前言: 今天在做项目时遇到了一个小问题 首先使用ViewPager显示多个页面,然后在每个页面上使用Fragment显示数据,其中有一部分数据是通过...WebView加载的Html标签。...<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent...="match_parent" android:layout_height="wrap_content" android:orientation="vertical" <TextView...问题是当数据加载完毕之后,WebView会自动移动到页面的最顶端,如果用户想查看处于WebView上方的TextView内容则必须手动将页面往下拉 解决以上问题可以在Scrollview中所使用的LinearLayout
思路:UIView加载完成3后,用NSTimer结合setContentOffset将UITextView向下滚动1像素。在滚动到底部的时候停止NSTimer。...onTick:) userInfo: nil repeats:YES]; } - (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView...selector(resetText) withObject:nil afterDelay:3.0f]; } - (void) onTick:(NSTimer*)theTimer { CGPoint pt = [textView...contentOffset]; CGFloat n = pt.y + 1; [textView setContentOffset:CGPointMake(pt.x, n)]; if (n> (...textView.contentSize.height-textView.bounds.size.height)) { [theTimer invalidate]; theTimer = nil
效果图: 实现思路 1、监听scrollview滑动到的位置,tablayout切换到对应标签 2、tablayout各标签点击,scrollview可滑动到对应区域 自定义scrollview 因为我们需要监听到滑动过程中...scrollview的滑动距离,自定义scrollview通过接口暴露滑动的距离。...定义变量标志lastPos,当scrollview 在同一模块中滑动时,则不再去调用tabLayout.setScrollPosition刷新标签。...自定义的AnchorView: public class AnchorView extends LinearLayout { private TextView tvAnchor; private...滑动到底部时并没有呈现出我们想要的效果,希望滑到最后一个时,全屏只有最后一块内容显示。
1.使用adapter 最简单的是ArrayAdapter,处理的是字符串 ArrayAdapter adapter = new ArrayAdapter(this...只是字符串就用ArrayAdapter,用到图文混排的就用自定义的 2.listview的优化(convertView,viewholder) 首先来了解一下ListView的工作原理。...用convertView减少文件解析次数 Android系统本身为我们考虑了ListView的优化问题,在复写的Adapter的类中,比较重要的两个方法是getCount()和getView()。...但是当xml文件被解析的时候,只要被创建出来了,其孩子的id就不会改变了。根据这个特点,可以将孩子id存入到指定的集合中,每次就可以直接取出集合中对应的元素就可以了。...为了解决这个问题(如何将事件消费从listview转到scrollview,就是子传父)我考虑过return true将事件消费掉,但是dispatchTouchEvent两者都会调用,不能这么做。
实现思路 1、监听scrollview滑动到的位置,tablayout切换到对应标签 2、tablayout各标签点击,scrollview可滑动到对应区域 自定义scrollview 因为我们需要监听到滑动过程中...scrollview的滑动距离,自定义scrollview通过接口暴露滑动的距离。...定义变量标志lastPos,当scrollview 在同一模块中滑动时,则不再去调用tabLayout.setScrollPosition刷新标签。...自定义的AnchorView: public class AnchorView extends LinearLayout { private TextView tvAnchor; private TextView...问题来了 可以看到当点击最后一项时,scrollView滑动到底部时并没有呈现出我们想要的效果,希望滑到最后一个时,全屏只有最后一块内容显示。
所以我采取了这样的方式,而不是先去看文档介绍中的所有关于属性的知识点,觉得那样挺累,也也记不住 这里的学习接前面的布局处理(一),地址:http://blog.csdn.net/u014737138/article.../details/40477309 这里学习的是一个关于软件版本的一个简单的布局: 主要学习:ScrollView布局 TextView 控件 以及在布局之间的嵌套 (ScrollView布局里面含有...3) android:text="@string/abouttitle" 设置文本,它的值时资源文件string中name=abouttitle的值 android...:textColor="@color/black" 设置文本的颜色 android:textSize="15dip" /> 设置文本的大小...将dip作为其他元素的单位。
“先各自分配各自控件的长度,然后将剩余的长度按照权重的比例layout_weight的大小进行设置。 ...一个是从里往外撑,一个是从外往里撑 ScrollView ScrollView滚动视图是指当拥有很多内容,屏幕显示不完时,需要通过滚动跳来显示的视图。ScrollView只支持垂直滚动。...,每条数据用一个文本框显示 TextView tv = new TextView(this); tv.setText(p.toString()); //把文本框设置为...id,这是一个 Android内置的 局文件, 里面只有一个 TextView, 可用于简单地显示一段文本。...SimpleAdapter //集合中每个元素都包含ListView条目需要的所有数据,该案例中每个条目需要一个字符串和一个整型,所以使用一个map来封装这两种数据 List<Map<String
stringByTrimmingTrailingCharactersInSet:[NSCharacterset whitespaceAndNewlineCharacterSet]]; NSString后连接字符串...、调用这个方法的view2、view2的所有子view都会调用layoutSubviews setFrame:只有在view设置frame且尺寸参数有不同的情况下调用 滑动UIScrollView时,scrollView...(UITextView *)textView { if ([textView.text isEqualToString:@""]) { textView.text = @"placeholder...UITextField to insert line-breaks. } ---- UIScrollView & UITableView & UICollectionView UIScrollView滚动到顶端...//UPDATE FOR iOS 7 [self.scrollView setContentOffset: CGPointMake(0, -self.scrollView.contentInset.top
领取专属 10元无门槛券
手把手带您无忧上云