android学习ScrollView的使用

摘要:
ScrollView的使用相对来讲比较简单,通过包含更多的布局文件,使得上下滑动可以浏览到更多内容。关于ScrollView有几个点需要注意的地方1,ScrollView的滚动方式ScrollView有两种滚动方式,横向的和纵向的,一般横向的用的比较少。

ScrollView 的使用相对来讲比较简单,通过包含更多的布局文件,使得上下滑动可以浏览到更多内容。

关于ScrollView有几个点需要注意的地方

1,ScrollView的滚动方式

ScrollView有两种滚动方式,横向的和纵向的,一般横向的用的比较少。ScrollView控件默认就是纵向滚动的,如果需要横向滚动只需要更改标签

HorizontalScrollView,即可满足要求

2,ScrollView默认是在滚动的过程中显示滚动条的,所以如果想隐藏滚动条有两种方式:

1,通过标签设置:android:scrollbars=“none”

2, 通过代码设置:setHorizontalScrollBarEenable(false);setVertivalScrollBarEnable(false);

3,ScrollView的常用方法:

1,getScrollY()-----返回的是滚动条滑动的距离

2,getMeasureHeight()------返回的是scrollView的总高度,也就是 滚动的距离+屏幕的宽度

3,getHeight()-------返回的是显示出来的scroll的高度

4,ScrollTo 和ScrollBy的区别

1,ScrollTo :从scroll的开始位置作为参考,进行滚动的距离

2,ScrollBy:从scroll的当前位置作为参考,进行滚动的距离

public class MainActivity extends Activity implementsView.OnClickListener{


    privateTextView textView;
    privateScrollView scrollView;
    privateButton up;
    privateButton down;
    @Override
    protected voidonCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        textView =(TextView)findViewById(R.id.textView);
        scrollView =(ScrollView)findViewById(R.id.scroll);
        textView.setText(R.string.text);
        up =(Button)findViewById(R.id.button);
        down =(Button)findViewById(R.id.button2);
        scrollView.setOnTouchListener(newView.OnTouchListener() {
            @Override
            public booleanonTouch(View v, MotionEvent event) {
                switch(event.getAction()){

                    caseMotionEvent.ACTION_MOVE:{
                        if(scrollView.getScaleY()<=0){
                            android.util.Log.i("main","top");
                        }
                        if(scrollView.getMeasuredHeight() == scrollView.getHeight()+scrollView.getScaleY()){

                            android.util.Log.i("main","bottom");
                        }
                        break;
                    }
                }
                return false;
            }
        });
    }
    @Override
    public voidonClick(View v) {
        switch(v.getId()){
            caseR.id.button:{
                scrollView.scrollBy(0, -30);
                break;
            }
            caseR.id.button2:{
                scrollView.scrollBy(0,30);
                break;
            }
        }
    }
}

ScrollView布局文件如下:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical">
    <LinearLayout
        android:layout_width="wrap_content"android:layout_height="wrap_content"android:orientation="horizontal">
        <Button
            android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="top"android:id="@+id/button" />
        <Button
            android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="down"android:id="@+id/button2" />
    </LinearLayout>
    <ScrollView
        android:id="@+id/scroll"android:layout_width="match_parent"android:layout_height="wrap_content"android:scrollbars="none">
        <TextView
            android:id="@+id/textView"android:text="@string/hello_world" android:layout_width="wrap_content"android:layout_height="wrap_content" />
    </ScrollView>
</LinearLayout>

免责声明:文章转载自《android学习ScrollView的使用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Rider调试时断点打不上(变灰色小叉)MySql操作手册下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

C#中如何去除窗体默认的关闭按钮

很多时候,在winform的设计下,会遇到新建窗体时不需要用到默认的关闭按钮的情况,而是用另外设置关闭 button或其他控件来控制窗体的关闭。 之前我遇到这个问题时,问了很多朋友,都没找到方法,VS的窗体属性里也没那一项,在MSDN里也没有相关的资料。 但后来偶然发现,原来办法是很简单的,只需要在初始化窗体的时候不显示那关闭按钮就可以了。 具体方法是,加...

安卓手机tcpdump的使用

一.常规操作步骤 1. 手机要有root权限 2. 下载tcpdump http://www.strazzere.com/android/tcpdump 3. adb push c:wherever_you_put cpdump /data/local/tcpdump 如果这一步真机无法push,可以用adb push c:where_you_...

DOM操作元素

DOM 操作元素 JavaScript的DOM操作可以改变网页内容、结构和样式。我们可以利用DOM操作元素来改变元素里面的内容、属性等。 DOM操作元素: 一、操作元素:(一)innerText 、(二)innerHTML 二、操作常见元素属性:src、href、title、alt等; 三、操作表单元素属性:type、value、disabled等; 四...

使用AVPro Video在Unity中播放开场视频(CG)笔记

游戏需要添加开场CG,调研在Unity中播放视频,采用的插件为AVPro Video,Unity版本为2018.4.0f1 Asset Store:AVPro Video - Core Android Edition 官方文档:https://www.renderheads.com/content/docs/AVProVideo/articles/intr...

检测当前运行环境——移动端与PC端。

方法1: $(function checkBrowser(){ var browser={      versions:function(){             var u = navigator.userAgent, app = navigator.appVersion; return { //移动终端浏览器版本信息                ...

cocos creator基础-(七)cc.Button使用、以及不规则按钮区域的实现

1: 掌握按钮的使用;   cc.Button   1:添加按钮的方法 (1)直接创建带Button组件的节点; (2) 先创建节点,再添加组件; 2:按钮组件, 按钮是游戏中最常用的组件, 点击然后响应事件; 3: 按钮的过渡效果: 过渡: 普通状态, 鼠标滑动到物体上, 按下状态, 禁用状态   (1)没有过渡,只有响应事件;   (2)颜色过渡,...