尚學堂【官網】-西安Java培訓|c++培訓|Android培訓|安卓培訓|java視頻教程|軟件工程師|-西安雁塔尚學堂計算機學校
Android培訓/西安Android培訓  尚學堂首頁Java學院Android培訓/西安Android培訓

android設置水平垂直滾動條自動滾動

www.mdxlln.live 發布人:java  |  來自:本站  |  發布時間:2017-07-28 10:45:00  |  點擊次數:2469

android 設置水平垂直滾動條自動滾動。看看下面的實例代碼,希望對大家有所幫助

[html] view plaincopy
android:id="@+id/horizonMenu" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:scrollbars="none" > 
android:id="@+id/chart_navigate" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:layout_alignParentLeft="true" 
android:layout_gravity="top" 
android:background="#ffffff" 
android:orientation="horizontal" 
android:layout_margin="0dp" 
android:layout_marginBottom="1dip" 
android:padding="0dp">

 

 

[java] view plaincopy
 
public class ChartFramgment extends Fragment { 
private static View viewMain; 
// the loading dialog after completed to login 
private static LinearLayout linearLayout; 
private static int navigateWidth = 0; 
private static HorizontalScrollView horizontalScrollView; 
private final static Handler handler = new Handler(); 
@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
Bundle savedInstanceState) { 
super.onCreateView(inflater, container, savedInstanceState); 
// get the view by id in the framgment. 
viewMain = inflater.inflate(R.layout.chart, container, false); 
DisplayMetrics displaymetrics = new DisplayMetrics(); 
getActivity().getWindowManager().getDefaultDisplay() 
.getMetrics(displaymetrics); 
navigateWidth=(int)(displaymetrics.widthPixels*0.8); 
horizontalScrollView = (HorizontalScrollView) viewMain 
.findViewById(R.id.horizonMenu); 
horizontalScrollView 
.setLayoutParams(new android.widget.RelativeLayout.LayoutParams( 
navigateWidth, 100)); 
linearLayout = (LinearLayout) viewMain 
.findViewById(R.id.chart_navigate); 
linearLayout.setOrientation(LinearLayout.HORIZONTAL); 
return viewMain; 

 
public static void slipToNext() { 
//滑動到下一頁d的相關處理 
//...... 
//導航滾動條隨著水平滾動 ,這里必須放到handler里面異步處理滾動才會到位,否則滾動會是上次滾動的結果,總差那么一點。 
handler.post(scrollHandler); 

 
public static void slipToBack() { 
//滑動到上一頁d的相關處理 
//...... 
//導航滾動條隨著水平滾動 
handler.post(scrollHandler); 

@Override 
public void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 

private static Runnable scrollHandler = new Runnable() { 
@Override 
public void run() { 
//計算滾動偏移量 
int offSet = (linearLayout.getMeasuredWidth()) 
- horizontalScrollView.getWidth(); 
if (offSet < 0) { 
offSet = 0; 

//滑到制定位置 
horizontalScrollView.scrollTo(offSet, 0); 

}; 
}
以上是水平自動滾動的部分代碼,垂直類似,做對應改動即可。

當前文:android設置水平垂直滾動條自動滾動
上一頁:8種開源android游戲引擎
下一頁:android多線程程序四步輕松完成
在線報名(*為必填項)
2019刘佰温白小姐一马一肖