public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
vp = (ViewPager) v.findViewById(R.id.ViewPager);
hsv = (HorizontalScrollView) v
.findViewById(R.id.columnHorizontalScrollView);
ll = (LinearLayout) v.findViewById(R.id.radioGroup_content);
tvList = new ArrayList
();
FragmentManager fm = getFragmentManager();
vp.setAdapter(new MyVpAdapter(fm, getFragment()));
for (int i = 0; i < title.length; i++) {
TextView tv = new TextView(getActivity());
// 设置距离
tv.setPadding(20, 0, 20, 0);
tv.setText(title[i]);
tv.setTextSize(20);
ll.addView(tv);
tvList.add(tv);
tv.setTag(i);
tv.setOnClickListener(this);
}
tvList.get(0).setTextColor(0xffff0033);
vp.setOnPageChangeListener(new OnPageChangeListener() {
public void onPageSelected(int arg0) {
change(arg0);
}
public void onPageScrolled(int arg0, float arg1, int arg2) {
}
public void onPageScrollStateChanged(int arg0) {
}
});
}
// 创建获得fragment数据的方法
public List
getFragment() {
list = new ArrayList
();
// 向集合中添加数据
for (int i = 0; i < title.length; i++) {
list.add(new MyFragment(URL[i]));
}
return list;
}
// 创建改变字体颜色和距离的方法
@SuppressLint("NewApi")
public void change(int position) {
Display display = getActivity().getWindowManager().getDefaultDisplay();
DisplayMetrics metrics = new DisplayMetrics();
display.getMetrics(metrics);
@SuppressWarnings("deprecation")
final int screenHalf = display.getWidth() / 2;// 屏幕宽度的一半
int scaleX = hsv.getScrollX();// 获得X轴的位置
int left = tvList.get(position).getLeft();
Log.i("aaa", screenHalf + "," + left + "," + scaleX);
int leftScreen = left - scaleX;
hsv.smoothScrollBy((leftScreen - screenHalf + 40), 0);
for (int i = 0; i < tvList.size(); i++) {
TextView tv1 = tvList.get(position);
TextView tv2 = tvList.get(i);
if (!tv2.equals(tv1)) {
tv2.setTextColor(Color.BLACK);
} else {
tv2.setTextColor(0xffff0033);
}
}
}
public void onClick(View v) {
int j = (Integer) v.getTag();
for (int i = 0; i < tvList.size(); i++) {
vp.setCurrentItem(j);
}
}
HorizontalScrollView
最新推荐文章于 2018-03-05 10:33:43 发布