㈠ 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;
}
});