热门IT资讯网

流动视图ScrollView

发表于:2024-11-29 作者:热门IT资讯网编辑
编辑最后更新 2024年11月29日,滚动视图的使用形式与各个布局管理器的操作形式类似,唯一不同的是,所有的布局管理器之中,可以包含多个组件,而滚动视图里只能有一个组件,所以所谓的视图指的就是提供一个专门的容器,这个容器里面可以装下多于屏

滚动视图的使用形式与各个布局管理器的操作形式类似,唯一不同的是,所有的布局管理器之中,可以包含多个组件,而滚动视图里只能有一个组件,所以所谓的视图指的就是提供一个专门的容器,这个容器里面可以装下多于屏幕宽度的组件,而后采用拖拽的方式显示所有 ScrollView 中的组件。

  我们这个案例是显示常用网址!

  知识点:ScrollView控件

一、设计界面

  1、打开"res/layout/activity_main.xml"文件。

    手工输入以下代码:切记XML文件ScrollView中只能放一个其他控件,如果想加入更多,只能通过java代码形式。


android:id="@+id/scroll"
android:layout_width="match_parent"
android:layout_height="match_parent" >
android:id="@+id/linear"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >






二、ScrollView流动视图代码 

  1、打开"src/com.genwoxue.scrollview/MainActivity.java"文件。

  然后输入以下代码:

package com.example.hw;


import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.LinearLayout;




public class MainActivity extends Activity {
private String webaddress[] ={"网易:www.163.com","新浪:www.sina.com.cn","搜狐:www.sohu.com",
"腾讯:www.qq.com","百度:www.baidu.com","东方财富:www.eastmoney.com",
"金融界:www.jrj.com.cn","奇艺:www.iqiyi.com","携程网:www.ctrip.com","中国移动:www.10086.cn",
"美食中国:www.meishichina.com","工商银行:www.icbc.com.cn","CSDN:www.csdn.net","跟我学:www.genwoxue.com"};
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//获取LinearLayout布局
LinearLayout layout = (LinearLayout) super.findViewById(R.id.linear);
//定义布局参数
LinearLayout.LayoutParams param = new LinearLayout.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
for(int i = 0;iButton btnWebAddress = new Button(this);
btnWebAddress.setText(webaddress[i]);//设置显示字体
layout.addView(btnWebAddress,param);//增加组件
}
}


@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}



ScrollView继承自FrameLayout,所以ScrollView控件本质就是一个布局管理器。

  2、效果如下,可以上下滑动:



0