首页 > 代码库 > Android视图之滚动视图
Android视图之滚动视图
滚动视图(ScrollView)是当需要显示的信息一个屏幕显示不下时使用的控件。
1.ScrollView概述
ScrollView由FrameLayout派生,同样位于android.widget包下。ScrollView类实际上是一个帧布局,一般情况下,其中的控件是按照线性进行布局的,用户可以对其进行滚动,以达到在屏幕中显示更多信息的目的。
默认情况下,ScrollView只是为其他组件添加垂直滚动条,如果应用需要添加水平滚动条,,则可借助于另一个滚动条视图来实现。ScrollView与HorizontalScrollView的基本功能本相似,只是前者添加垂直滚动条,后者添加水平滚动条。
ScrollView的使用与普通布局的使用没有太大区别,可以在XML文件中进行配置,也可以通过java代码进行设置。在ScrollView中可以添加任意满足条件的控件,当一个屏幕显示不下其中所包含的所有控件或信息时,便会自动添加滚动功能。
注意:ScrollView中同一时刻只能包含一个View。
2.在XML中配置Scrollview控件
下面给大家举个例子来演示在XML文件中配置Scrollview控件。
利用Scrollview类完成图片的垂直滚动。其实现的步骤为:
(1)在Eclipse中创建一个Android应用项目,命名为li_ScrollViewXML.
(2)打开res/layout目录下的main.xml文件,在文件中布局图像的垂直滚动,其代码为:
<?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android = "http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:scrollbars="vertical" android:background="#000000"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="http://www.mamicode.com/@drawable/study" android:layout_gravity="center_horizontal"/> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="http://www.mamicode.com/@drawable/study" android:layout_gravity="center_horizontal"/> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="http://www.mamicode.com/@drawable/study" android:layout_gravity="center_horizontal"/> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="http://www.mamicode.com/@drawable/study" android:layout_gravity="center_horizontal"/> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="http://www.mamicode.com/@drawable/study" android:layout_gravity="center_horizontal"/> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="http://www.mamicode.com/@drawable/study" android:layout_gravity="center_horizontal"/> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="http://www.mamicode.com/@drawable/study" android:layout_gravity="center_horizontal"/> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="http://www.mamicode.com/@drawable/study" android:layout_gravity="center_horizontal"/> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="http://www.mamicode.com/@drawable/study" android:layout_gravity="center_horizontal"/> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="http://www.mamicode.com/@drawable/study" android:layout_gravity="center_horizontal"/> </LinearLayout> </ScrollView>
3.在java文件中配置Scrollview控件
Scrollview卷轴视图是指当拥有很多内容,一屏显示不完时,需要通过滚动条来显示视图的使用。下面通过一个案例来演示在java文件中配置Scrollview控件。
【例】实现在java代码中配置Scrollview控件。其具体步骤为:
(1)在Eclipse中创建一个Android项目,命名为li_ScrollViewJava.
(2)打开res/layout目录下的main.xml布局文件,在文件中生命一个Scrollview控件及一个Textview控件,其代码为:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android = "http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#000000"> <!--ScrollView为滚动条控件;scrollbarStyle为滚动条的样式--> <ScrollView android:layout_width="match_parent" android:layout_height="200px" android:scrollbarStyle="outsideOverlay" android:background="#aabbcc"> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/textview"/> </ScrollView> </LinearLayout>
(3)打开src\fs.li_scrollviewjava包下的MainActivity.java文件,在文件中实现Scrollview的设置,其代码为:
package com.duck.shiretan.scrollapplication; import android.app.Activity; import android.os.Bundle; import android.widget.TextView; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); this.setContentView(R.layout.activity_main); setTitle("ScrollView"); TextView textView = (TextView) findViewById(R.id.textview); textView.setText("我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n 我是Android\n"); } }
运行上面的代码得到的就是我们想要实现的Scrollview控件的配置。
欢迎大家加入技术交流群:364595326
Android视图之滚动视图