1、首先导入wheel库或者将wheel文件拷到项目中
专注于为中小企业提供网站建设、网站制作服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业琼结免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了1000+企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
主类:
package com.example.view;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import antistatic.spinnerwheel.AbstractWheel;
import antistatic.spinnerwheel.OnWheelClickedListener;
import antistatic.spinnerwheel.OnWheelScrollListener;
import antistatic.spinnerwheel.WheelView;
import antistatic.spinnerwheel.adapters.AbstractWheelTextAdapter;
public class MainActivity2 extends Activity {
private String TAG = "MainActivity2";
private WheelView wheelView1;
private MyAdapter viewAdapter;
private int mChoosedIndex;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main_activity2);
wheelView1 = (WheelView) findViewById(R.id.wheelView1);
String[] arrMonths = new String[7];
for (int i = 1; i < arrMonths.length + 1; i++) {
arrMonths[i - 1] = i + "个月";
}
viewAdapter = new MyAdapter(this, arrMonths);//设置适配器
wheelView1.setViewAdapter(viewAdapter);
wheelView1.setDrawLine(false);//设置是否在前景图上下画线
wheelView1.setWheelForeground(R.drawable.wifi_notify);//设置前景图片
wheelView1.setDrawShadows(false);//设置前景是否画阴影
scrollToMiddle();//默认滑到中间一栏
wheelView1.addClickingListener(click);//设置点击事件
wheelView1.addScrollingListener(scrollListener);//设置滑动事件
}
OnWheelClickedListener click = new OnWheelClickedListener() {
public void onItemClicked(WheelView wheel, int itemIndex) {
Log.e(TAG, ">>>>onItemClicked=WheelView>>"+itemIndex);
wheel.setCurrentItem(itemIndex, true);
// viewAdapter .notifyDataChangedEvent();//刷新getItem
}
@Override
public void onItemClicked(AbstractWheel wheel, int itemIndex) {
// TODO Auto-generated method stub
Log.e(TAG, ">>>>onItemClicked=AbstractWheel>>"+itemIndex);
// viewAdapter .notifyDataChangedEvent();//刷新getItem
}
};
OnWheelScrollListener scrollListener = new OnWheelScrollListener() {
@Override
public void onScrollingStarted(AbstractWheel wheel) {
// TODO Auto-generated method stub
Log.e(TAG, ">>>>onScrollingStarted=AbstractWheel>>");
}
@Override
public void onScrollingFinished(AbstractWheel wheel) {
// TODO Auto-generated method stub
Log.e(TAG, ">>>>onScrollingFinished=AbstractWheel>>");
// viewAdapter .notifyDataChangedEvent();//刷新getItem
}
@Override
public void onScrollingStarted(WheelView wheel) {
// TODO Auto-generated method stub
Log.e(TAG, ">>>>onScrollingStarted=WheelView>>");
}
@Override
public void onScrollingFinished(WheelView wheel) {
// TODO Auto-generated method stub
// viewAdapter .notifyDataChangedEvent();//刷新getItem
Log.e(TAG, ">>>>onScrollingFinished=WheelView>>");
}
};
/**
*
* @Title: scrollToLast
* @Description: 滑到滚轮中间
* @throws
*/
private void scrollToMiddle() {
wheelView1.stopScrolling();
int middleIndex = (wheelView1.getViewAdapter().getItemsCount() + 1) / 2;
mChoosedIndex = middleIndex;
Log.e("", ">>>>>" + middleIndex);
wheelView1.setCurrentItem(middleIndex);
}
private class MyAdapter extends AbstractWheelTextAdapter {
String[] arrMonths;
protected MyAdapter(Context context, String[] arrMonths) {
super(context, R.layout.wheel_item, NO_RESOURCE);
this.arrMonths = arrMonths;
}
@Override
public int getItemsCount() {
return arrMonths.length;
}
@Override
public View getItem(int index, View convertView, ViewGroup parent) {
View view = super.getItem(index, convertView, parent);
TextView tvItem = (TextView) view.findViewById(R.id.tv_item);
//在适配器中改变item的样式
// if (index == mChoosedIndex) {
// tvItem.setTextColor(getResources().getColor(R.color.lightblue));
// } else {
// tvItem.setTextColor(getResources().getColor(
// R.color.gray_info_text));
// }
tvItem.setText(arrMonths[index]);
return view;
}
@Override
protected CharSequence getItemText(int index) {
return arrMonths[index];
}
public void notifyDataChangedEvent() {
super.notifyDataChangedEvent();
}
@Override
public void notifyDataInvalidatedEvent() {
super.notifyDataInvalidatedEvent();
}
}
}
wheel_item文件:
android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > android:id="@+id/tv_item" android:layout_width="80dp" android:layout_height="40dp" android:textColor="#ffffff" android:textSize="20sp" android:gravity="center" android:layout_gravity="center" android:background="#000000" android:text="tv" />
布局文件:activity_main_activity2.xml
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity2" > android:id="@+id/wheelView1" android:layout_width="150dp" android:layout_height="200dp" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:layout_marginTop="174dp" android:background="#ff00ff" />
网页名称:wheel的使用
本文URL:http://scyingshan.cn/article/ghcseg.html