㈠ android中scrollview怎么实现阻尼回弹
1。你可以用ViewFlipper 来实现效果,每一张图片为一页,加上滑屏动画效果,这个网上资料很全。2。你可以使用gallery来显示图片,这个跟ListView的使用方法是一样的,网上资料和SDK文档里面都介绍很详细。3。用手势监听需要给View上面实现OntouchListener,具体方法跟ViewFlipper的翻页效果是一样的
㈡ android scrollview的水平滚动条问题,哪位高手给指教下啊,谢谢了!!
如果你把内容包含在ScrollView中,当内容超出高度时会自动出现滚动条。
另外,使用控件HorizontalScrollView 来包住你的内容时,
如果你的内容假设是一个LinearLayout, 那么当LinearLayout的宽度超过屏幕时, 将会自动产生滚动条,当你拖动鼠标时,效果跟scrollView一样,不过是横向而己
例:
纵向滚动
<ScrollView>
<LinearLayout ........>
<TextView ...../>
<TextView ...../>
<TextView ...../>
<TextView ...../>
</LineraLayout>
</ScrollView>
模向滚动
<HorizontalScrollView >
<LinearLayout ........>
<TextView ...../>
<TextView ...../>
<TextView ...../>
<TextView ...../>
</LineraLayout>
</HorizontalScrollView >
有时候甚至可以做到横向纵向都支持,只需要你合理设计就可以, 注意ScrollView中只能加一个控制,不能超过两个
㈢ android在代码中设置控件(ScrollView)的高度
一模塌般View像你说的那样便得了,如果那样不行的话可能Scrollview比较特殊一点,我一般都是让饥销ScrollView wrap_content ,然后ScrollView里的布局不要wrap_content,比如里面嵌套一个RelaytiveLayout,这个RelaytiveLayout的旦肢圆高度写死。你代码中设置这个RelaytiveLayout的高度试试能不能满足你的需求
㈣ android 怎样用HorizontalScrollView左右弹性的菜单
{
SlidingMenumSlidingMenu;
@Override
protectedvoidonCreate(Bundlearg0){
super.onCreate(arg0);
setContentView(R.layout.main);
DisplayMetricsdm=newDisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
mSlidingMenu=(SlidingMenu)findViewById(R.id.slidingMenu);
mSlidingMenu.setAlignScreenWidth((dm.widthPixels/5)*2);
ViewleftView=getLayoutInflater().inflate(R.layout.left_menu,null);
ViewrightView=getLayoutInflater().inflate(R.layout.right_menu,null);
ViewcenterView=getLayoutInflater().inflate(R.layout.center,null);
mSlidingMenu.setLeftView(leftView);
mSlidingMenu.setRightView(rightView);
mSlidingMenu.setCenterView(centerView);
ButtonshowLeftMenu=(Button)centerView.findViewById(R.id.center_left_btn);
showLeftMenu.setOnClickListener(this);
ButtonshowRightMenu=(Button)centerView.findViewById(R.id.center_right_btn);
showRightMenu.setOnClickListener(this);
}
@Override
publicvoidonClick(Viewv){
//TODOAuto-generatedmethodstub
switch(v.getId()){
caseR.id.center_left_btn:
mSlidingMenu.showLeftView();
break;
caseR.id.center_right_btn:
mSlidingMenu.showRightView();
break;
default:
break;
}
}
}
㈤ 如何监听android的屏幕滑动停止事件
android的屏幕滑动简消停止事件监听方法为:
1、自定义一个ScrollView,内容只要将标准的ScrollView 拷庆迟贝出来,然后就可以利用Scroller的两个属性去判断是否滚动完毕:
public final boolean isFinished() {
return mFinished;
}
public final int getDuration() {
return mDuration;
}
2、启动线程来获得当前的scrollview的高度,并实时更新就可以了,一旦高度不再发生变化则判断为停止誉咐李。
㈥ android类似下抽屉的效果怎么实现
你说的效果实现可以分为两个部分:
一、拖拽部分,这部分你实现让scrollview跟着你的手移动
1、给scrollview添加onTouchListener或者自定义scrollview并重载其onTouchEvent方法。
2、根据move不停设置scrollview的坐标
你需要注意的是:event.getX()是你手指的坐标,而不是控件的坐标,很多人能够理解,但有的人写的时候会搞混。
你需要做的是:取得4个坐标——
(1)、你手指点下去的坐标,这个坐标在ACTION_DOWN中获得:primaryTouchCoord,这个坐标要一直保存,所以要在Touch事件外定义(类成员变量);
(2)、你手指当前的坐标curTouchCoord,在每次Touch事件触发的时候用event.getY()获得,即在switch外或者ACTION_MOVE中获得;
(3)、scrollview初始坐标primaryScrollViewCoord,这个坐标也在ACTION_DOWN中获得并且一直保存。
(4)、scrollview最终坐标curScrollViewCoord,在ACTION_UP中获得。
有了这四个坐标,就可以实现了。
在ACTION_MOVE中判断最大和最小Y坐标,比如
if(scrollview.getY<0){//让scrollview的坐标不超过你的最大和最小坐标
scrollview.setY(0);
}
if(scrollview.getY>(int)(mScreenHeight()*0.9)){
...
}
if(scrollview.getY()>0&&scrollview.getY<(int)(mScreenHeight()*0.9)+可以滑动条件),则执行scrollView.setY(primaryScrollViewCoord+(curTouchCoord-primaryTouchCoord));
上面完成后,scrollview就会跟着你的手指移动并且不会超过指定坐标
由于是scrollview,你不得不判断什么时候scrollview有效,否则在scrollview移动的时候,scrollview的内部也会移动。
上面的回答根据你实际情况修改。
二、动画部分,你的手离开屏幕后scrollview向上/下动画
在完成第一步后,你就已经完成了大半。
以下在ACTION_UP中完成
这时,在上面提到的primaryScrollViewCoord就会使用了,根据scrollview移动的距离判断是向上/下,然后使用animation(Set)完成接下来的动作。
你这里将使用Animation animation = new TranslateAnimation(float fromXDelta, float toXDelta, float fromYDelta, float toYDelta);
注意4个坐标的意义,第一个为起始X坐标离当前坐标的距离,这里为0,第二个坐标为目的坐标到当前的距离,正负代表不同的方向;后面两个为Y坐标;
你这里要设置animation.setFillAfter(true),使UI保存在动画后;如果要保存到动画前,则使用setFillBefore(true);
animation.setDuration(int)设置动画事件
然后scrollview.startAnimation()开始动画
动画具体使用,网上可以找到,就不多说了。
需要注意的:
1、动画结束后一定要clear,可以给动画添加监听,在onAnimationEnd()里执行scrollview.clearAnimation(),如果可以的话,同时将scrollview设置成最大或最小坐标
2、不要使用touch坐标直接设置scrollview坐标,那样可能会导致移位。
㈦ android 如何禁止scrollview 滚动
android scrollview组件禁止滑动的方法;
xml配置:
android:id="@+id/sc_freement"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@id/category_line"
android:scrollbars="none"
android:fadingEdge="none">
</<span style="line-height: 21px; ">ScrollView>
java代码控制:
ScrollView scrollView = (ScrollView)this.findViewById(R.id.sc_freement);
scrollView.setOnTouchListener(new View.OnTouchListener(){
@Override
public boolean onTouch(View arg0, MotionEvent arg1) {
return true;
}
});