滚动控件ScrollView
来源:互联网 发布:知乎live怎么用 编辑:程序博客网 时间:2024/06/05 17:01
当屏幕内容较多无法全部显示时,就需要用到滚动视图。
种类:
- HorizontalScrollView:水平滚动视图
- ScorllView:垂直滚动视图
标签中的Scrollbars可以这只滚动条的属性,能让它是否显示
方法getScaleY()可以获取滚动过的距离
scrollto 和 scrollby 方法的区别
//scrollto 以滚动视图起始位置开始计算的
//Scrollby 以前一个位置的开始计算,滚动对应位置
example:
------------------------------------------------------------------------------------------------------------
public class MainActivity extends Activity implements OnClickListener{
private TextView tv;
private ScrollView scroll;
private Button bt1;
private Button bt2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv = (TextView) findViewById(R.id.textview);
tv.setText(R.string.Text);
bt1 = (Button) findViewById(R.id.bt_up);
bt2 = (Button) findViewById(R.id.bt_down);
bt1.setOnClickListener(this);
bt2.setOnClickListener(this);
scroll = (ScrollView) findViewById(R.id.scroll);
scroll.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
/*
*1. getScrollY -- 滚动条滚动的距离
* 2. getmeasureHeight-- 是整个内容的高度
* 3. getHeight--- 屏幕的高度
*/
case MotionEvent.ACTION_MOVE:{
if(scroll.getScaleY()<=0)
{
Log.i("main", "滑动到顶部");
}
if(scroll.getChildAt(0).getMeasuredHeight()<=scroll.getHeight()+scroll.getScaleY()){
Log.i("main","滑动到底部");
tv.append(getResources().getText(R.string.Text));
}
break;
}
default:
break;
}
return false;
}
});
}
@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;
}
private ScrollView scroll;
private Button bt1;
private Button bt2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv = (TextView) findViewById(R.id.textview);
tv.setText(R.string.Text);
bt1 = (Button) findViewById(R.id.bt_up);
bt2 = (Button) findViewById(R.id.bt_down);
bt1.setOnClickListener(this);
bt2.setOnClickListener(this);
scroll = (ScrollView) findViewById(R.id.scroll);
scroll.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
/*
*1. getScrollY -- 滚动条滚动的距离
* 2. getmeasureHeight-- 是整个内容的高度
* 3. getHeight--- 屏幕的高度
*/
case MotionEvent.ACTION_MOVE:{
if(scroll.getScaleY()<=0)
{
Log.i("main", "滑动到顶部");
}
if(scroll.getChildAt(0).getMeasuredHeight()<=scroll.getHeight()+scroll.getScaleY()){
Log.i("main","滑动到底部");
tv.append(getResources().getText(R.string.Text));
}
break;
}
default:
break;
}
return false;
}
});
}
@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;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.bt_up:{
scroll.scrollBy(0,-60);
break;
}
case R.id.bt_down:{
scroll.scrollBy(0, 60);
break;
}
default:
break;
}
}
}
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.bt_up:{
scroll.scrollBy(0,-60);
break;
}
case R.id.bt_down:{
scroll.scrollBy(0, 60);
break;
}
default:
break;
}
}
}
0 0
- 滚动视图控件ScrollView
- 滚动控件ScrollView
- iphone scrollview滚动控件 UIScrollViewDelegate
- IOS ScrollView滚动控件使用
- ScrollView控件实现屏幕滚动
- ScrollView 控件支持垂直滚动
- Android控件之ScrollView(滚动视图)
- UI控件之ScrollView(滚动条)
- 高级控件之滚动视图(ScrollView)
- Android ScrollView滚动条控件,滚动到底部或顶部
- 【Android 开发】:UI控件之 ScrollView垂直滚动控件 和 HorizontalScrollView水平滚动控件的使用
- scrollview滚动
- Android开发:ScrollView自动滚动以显示指定子控件
- DiscrollView--ScrollView滚动时的控件动画效果 GIT项目
- ios storyboard scrollView 拖拽控件后无法滚动
- Android,ScrollView内的控件改变之后禁止自动滚动
- ScrollView内的控件改变之后自动滚动的问题
- 嵌套在ScrollView中的TextView控件可以自由滚动
- 111111111111
- Android的页面管理控件ViewFlipper
- JSP中如何 循环显示 数据库中的数据到list.jsp页面 (转载)
- 小技巧,关于OC打印指针地址和arc下的retaincount
- Struts多个文件上传
- 滚动控件ScrollView
- Gallery&自定义适配器
- 本博客全部文章导航
- Masonry使用
- sdau-2 1010
- numpy中的nonzero()的用法
- Android控件SeekBar
- MySql 数据库操作
- numpy 中array参数'f'与order='f'区别