ScrollView卷轴视图是指当拥有很多内容,一屏显示不完时,需要通过滚动跳来显示的视图.的使用:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/ScrollView" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:scrollbars="vertical">
<LinearLayout android:id="@+id/LinearLayout"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView android:id="@+id/TestView" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:text="TestView0" />
<Button android:id="@+id/Button" android:text="Button0" android:layout_width="fill_parent"
android:layout_height="wrap_content"></Button>
</LinearLayout>
</ScrollView>
package com.Aina.Android;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.view.KeyEvent;
import android.view.View;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.ScrollView;
import android.widget.TextView;
public class Test_ScrollView extends Activity {
/** Called when the activity is first created. */
private LinearLayout mLayout;
private ScrollView sView;
private final Handler mHandler = new Handler();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// 创建一个线性布局
mLayout = (LinearLayout) this.findViewById(R.id.LinearLayout);
// 创建一个ScrollView对象
sView = (ScrollView) this.findViewById(R.id.ScrollView);
Button mBtn = (Button) this.findViewById(R.id.Button);
mBtn.setOnClickListener(mClickListener);// 添加点击事件监听
}
public boolean onKeyDown(int keyCode, KeyEvent event){
Button b = (Button) this.getCurrentFocus();
int count = mLayout.getChildCount();
Button bm = (Button) mLayout.getChildAt(count-1);
if(keyCode==KeyEvent.KEYCODE_DPAD_UP && b.getId()==R.id.Button){
bm.requestFocus();
return true;
}else if(keyCode==KeyEvent.KEYCODE_DPAD_DOWN && b.getId()==bm.getId()){
this.findViewById(R.id.Button).requestFocus();
return true;
}
return false;
}
// Button事件监听,当点击第一个按钮时增加一个button和一个textview
private Button.OnClickListener mClickListener = new Button.OnClickListener() {
private int index = 1;
@Override
public void onClick(View v) {
TextView tView = new TextView(Test_ScrollView.this);//定义一个TextView
tView.setText("TextView" + index);//设置TextView的文本信息
//设置线性布局的属性
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.FILL_PARENT,
LinearLayout.LayoutParams.WRAP_CONTENT);
mLayout.addView(tView, params);//添加一个TextView控件
Button button = new Button(Test_ScrollView.this);//定义一个Button
button.setText("Button" + index);//设置Button的文本信息
button.setId(index++);
mLayout.addView(button, params);//添加一个Button控件
mHandler.post(mScrollToButton);//传递一个消息进行滚动
}
};
private Runnable mScrollToButton = new Runnable() {
@Override
public void run() {
int off = mLayout.getMeasuredHeight() - sView.getHeight();
if (off > 0) {
sView.scrollTo(0, off);//改变滚动条的位置
}
}
};
}
此示例中一个TextView和一个Button来实现自动滚动,当我们点击Button0时自动产生多个类似的项,如果一屏显示不完,则通过ScrollView来显示。
分享到:
相关推荐
主要介绍了Android ScrollView使用代码示例,本文直接给出示例代码,需要的朋友可以参考下
Android ScrollView自动滑动
Android ScrollView 嵌套解决方案 自定义View控件
android scrollview 下拉刷新
亲测成功,可以直接嵌套项目中 ScrollView嵌套TabLayout+ViewPager解决滑动冲突,已进行重点标注 ViewPager会根据frament的界面高度进行展示,进行framnet的高度测量 嵌套冲突已全部解决
android ScrollView上下左右任意滑动,图片原样超出屏幕尺寸任意滑动。
Android Scrollview上滑停靠—悬浮框停靠在标题栏下方(防微博详情页)--完整demo
ScrollView完美嵌套demo,解决两个ScrollView嵌套的滑动问题
Android scrollview ListView GridView上拉下拉刷新,带缓冲效果
android scrollview 滑动指定位置,要点赞支持呦
android ScrollView,ListView 截屏并保存到图库
Android ScrollView截图涂鸦截取ScrollView长图,并在截取的图片上进行涂鸦和保存,下一步则是通过Acache传递涂鸦后的图片进行展示。(代码中没有提供截取ScrollView的方法,只提供了一张长图)主要是通过在...
NULL 博文链接:https://gundumw100.iteye.com/blog/1060878
和网络上的ReboundScrollView类似,但是没有那些滑动BUG,并且有横向弹性滑动
因为项目需要做了一个效果,就是当某个操作按钮滑动顶部是固定在顶部,不让其隐藏,让用户无时无刻都可以实现这个操作。 这个效果不是很神奇,就个人来说呢,很有用。无形间增加了用户体验鸟
本Demo自定义了ScrollView控件,来实现上、下拉的反弹效果,提高了用户体验。
Android scrollview 滚动条
1,顶部轮播图,自动轮播效果。 2,顶部的viewpager 可随着下拉图片有渐变大的效果。 3,自定义Scrollview 顶部图片 下拉放大效果
android ScrollView滑动置顶