public class ShouyeActivity extends FragmentActivity {
private int widths;
private ViewPager vp;
private HorizontalScrollView hs;
private RadioGroup rg;
private ArrayList<Fragment> flist;
private ImageView user_img;
private ImageView sou_img;
private SlidingMenu menu;
private String[] url = new String[] {
"http://ic.snssdk.com/2/article/v25/stream/?count=20&min_behot_time=1468841996&bd_city=%E5%8C%97%E4%BA%AC%E5%B8%82&bd_latitude=40.039927&bd_longitude=116.299222&bd_loc_time=1468897525&loc_mode=7&loc_time=1468897489&latitude=40.046144180692714&longitude=116.30569239609902&city=%E5%8C%97%E4%BA%AC%E5%B8%82&lac=4530&cid=30481&iid=4878106677&device_id=5626561549&ac=wifi&channel=baidu&aid=13&app_name=news_article&version_code=460&device_platform=android&device_type=PLK-TL01H&os_api=23&os_version=6.0&uuid=867689026581753&openudid=5e124a3bdab87e89",
"http://ic.snssdk.com/2/article/v25/stream/?category=news_hot&count=20&min_behot_time=1468841393&bd_city=北京市&bd_latitude=40.040079&bd_longitude=116.299419&bd_loc_time=1468899819&loc_mode=7&loc_time=1468899006&latitude=40.04610786144017&longitude=116.3056378726328&city=北京市&lac=4530&cid=30481&iid=4878106677&device_id=5626561549&ac=wifi&channel=baidu&aid=13&app_name=news_article&version_code=460&device_platform=android&device_type=PLK-TL01H&os_api=23&os_version=6.0&uuid=867689026581753&openudid=5e124a3bdab87e89",
"http://ic.snssdk.com/2/article/v25/stream/?category=news_society&count=20&min_behot_time=1468826858&bd_city=%E5%8C%97%E4%BA%AC%E5%B8%82&bd_latitude=40.040066&bd_longitude=116.299354&bd_loc_time=1468900541&loc_mode=7&loc_time=1468899819&latitude=40.04610786144017&longitude=116.3056378726328&city=%E5%8C%97%E4%BA%AC%E5%B8%82&lac=4530&cid=28615&iid=4878106677&device_id=5626561549&ac=wifi&channel=baidu&aid=13&app_name=news_article&version_code=460&device_platform=android&device_type=PLK-TL01H&os_api=23&os_version=6.0&uuid=867689026581753&openudid=5e124a3bdab87e89",
"http://ic.snssdk.com/2/article/v25/stream/?category=news_entertainment&count=20&bd_city=北京市&bd_latitude=40.040066&bd_longitude=116.299354&bd_loc_time=1468900541&loc_mode=7&loc_time=1468899819&latitude=40.04610786144017&longitude=116.3056378726328&city=北京市&lac=4530&cid=28615&iid=4878106677&device_id=5626561549&ac=wifi&channel=baidu&aid=13&app_name=news_article&version_code=460&device_platform=android&device_type=PLK-TL01H&os_api=23&os_version=6.0&uuid=867689026581753&openudid=5e124a3bdab87e89",
"http://ic.snssdk.com/2/article/v25/stream/?category=news_tech&count=20&bd_city=北京市&bd_latitude=40.040093&bd_longitude=116.299416&bd_loc_time=1469177219&loc_mode=7&loc_time=1469173827&latitude=40.046167846793544&longitude=116.30570547437816&city=北京市&lac=4530&cid=28615&iid=4878106677&device_id=5626561549&ac=wifi&channel=baidu&aid=13&app_name=news_article&version_code=460&device_platform=android&device_type=PLK-TL01H&os_api=23&os_version=6.0&uuid=867689026581753&openudid=5e124a3bdab87e89",
"http://ic.snssdk.com/2/article/v25/stream/?category=news_car&count=20&bd_city=%E5%8C%97%E4%BA%AC%E5%B8%82&bd_latitude=40.040093&bd_longitude=116.299416&bd_loc_time=1469177219&loc_mode=7&loc_time=1469173827&latitude=40.046167846793544&longitude=116.30570547437816&city=%E5%8C%97%E4%BA%AC%E5%B8%82&lac=4530&cid=28615&iid=4878106677&device_id=5626561549&ac=wifi&channel=baidu&aid=13&app_name=news_article&version_code=460&device_platform=android&device_type=PLK-TL01H&os_api=23&os_version=6.0&uuid=867689026581753&openudid=5e124a3bdab87e89",
"http://ic.snssdk.com/2/article/v25/stream/?category=news_sports&count=20&bd_city=%E5%8C%97%E4%BA%AC%E5%B8%82&bd_latitude=40.040093&bd_longitude=116.299416&bd_loc_time=1469177219&loc_mode=7&loc_time=1469173827&latitude=40.046167846793544&longitude=116.30570547437816&city=%E5%8C%97%E4%BA%AC%E5%B8%82&lac=4530&cid=28615&iid=4878106677&device_id=5626561549&ac=wifi&channel=baidu&aid=13&app_name=news_article&version_code=460&device_platform=android&device_type=PLK-TL01H&os_api=23&os_version=6.0&uuid=867689026581753&openudid=5e124a3bdab87e89",
"http://ic.snssdk.com/2/article/v25/stream/?category=news_finance&count=20&bd_city=%E5%8C%97%E4%BA%AC%E5%B8%82&bd_latitude=40.040093&bd_longitude=116.299416&bd_loc_time=1469177219&loc_mode=7&loc_time=1469173827&latitude=40.046167846793544&longitude=116.30570547437816&city=%E5%8C%97%E4%BA%AC%E5%B8%82&lac=4530&cid=28615&iid=4878106677&device_id=5626561549&ac=wifi&channel=baidu&aid=13&app_name=news_article&version_code=460&device_platform=android&device_type=PLK-TL01H&os_api=23&os_version=6.0&uuid=867689026581753&openudid=5e124a3bdab87e89",
"http://ic.snssdk.com/2/article/v25/stream/?category=news_military&count=20&bd_city=%E5%8C%97%E4%BA%AC%E5%B8%82&bd_latitude=40.040093&bd_longitude=116.299416&bd_loc_time=1469177219&loc_mode=7&loc_time=1469173827&latitude=40.046167846793544&longitude=116.30570547437816&city=%E5%8C%97%E4%BA%AC%E5%B8%82&lac=4530&cid=28615&iid=4878106677&device_id=5626561549&ac=wifi&channel=baidu&aid=13&app_name=news_article&version_code=460&device_platform=android&device_type=PLK-TL01H&os_api=23&os_version=6.0&uuid=867689026581753&openudid=5e124a3bdab87e89",
"http://ic.snssdk.com/2/article/v25/stream/?category=news_health&count=20&bd_city=北京市&bd_latitude=40.040066&bd_longitude=116.299354&bd_loc_time=1469177855&loc_mode=7&loc_time=1469177467&latitude=40.046244950479775&longitude=116.30577088692061&city=北京市&lac=4530&cid=30481&iid=4878106677&device_id=5626561549&ac=wifi&channel=baidu&aid=13&app_name=news_article&version_code=460&device_platform=android&device_type=PLK-TL01H&os_api=23&os_version=6.0&uuid=867689026581753&openudid=5e124a3bdab87e89",
"http://ic.snssdk.com/2/article/v25/stream/?category=news_local&count=20&min_behot_time=1469176640&bd_city=%E5%8C%97%E4%BA%AC%E5%B8%82&bd_latitude=40.04005&bd_longitude=116.299307&bd_loc_time=1469182975&loc_mode=7&loc_time=1469182965&latitude=40.04623505402024&longitude=116.30576189228731&city=%E5%8C%97%E4%BA%AC%E5%B8%82&user_city=%E5%8C%97%E4%BA%AC&lac=4530&cid=30481&iid=4878106677&device_id=5626561549&ac=wifi&channel=baidu&aid=13&app_name=news_article&version_code=460&device_platform=android&device_type=PLK-TL01H&os_api=23&os_version=6.0&uuid=867689026581753&openudid=5e124a3bdab87e89",
"http://ic.snssdk.com/2/article/v25/refresh_tip/?category=video&min_behot_time=1469177142&city=%E5%8C%97%E4%BA%AC%E5%B8%82&iid=4878106677&device_id=5626561549&ac=wifi&channel=baidu&aid=13&app_name=news_article&version_code=460&device_platform=android&device_type=PLK-TL01H&os_api=23&os_version=6.0&uuid=867689026581753&openudid=5e124a3bdab87e89" };
@Override
public void onCreate(Bundle savedInstanceState) {
setContentView(R.layout.activity_shouye);
super.onCreate(savedInstanceState);
// 獲取屏幕寬度
widths = getResources().getDisplayMetrics().widthPixels;
// 控件
vp = (ViewPager) findViewById(R.id.pager);
hs = (HorizontalScrollView) findViewById(R.id.hs);
rg = (RadioGroup) findViewById(R.id.radioGroup);
user_img = (ImageView) findViewById(R.id.user);
sou_img = (ImageView) findViewById(R.id.sou);
fragmentList();
// 默認是第一個被選中
rg.getChildAt(0).setSelected(true);
// 按鈕
initbutton();
// 適配器
PagerAdapter();
// 默認
vp.setCurrentItem(0);
ChangeView(0);
// 側滑
CeHua();
}
// 側滑
public void CeHua() {
// 獲取slindingmenu
menu = new SlidingMenu(this);
// 設置菜單模式
menu.setMode(SlidingMenu.LEFT);
// 設置觸屏模式
menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_MARGIN);
// 側滑之後的剩餘寬度
menu.setBehindOffsetRes(R.dimen.kuan);
menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);
// 設置佈局文件 避免視圖重複,弄個空的視圖
menu.setMenu(R.layout.kong);
// 側滑出一個fragment
getSupportFragmentManager().beginTransaction().replace(R.id.kong, new CeHuaFragment()).commit();
}
public void PagerAdapter() {
// TODO Auto-generated method stub
vp.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) {
@Override
public int getCount() {
// TODO Auto-generated method stub
return flist.size();
}
@Override
public Fragment getItem(int arg0) {
Fragment fragment = flist.get(arg0);
Bundle args = new Bundle();
args.putString("category", url[arg0]);
fragment.setArguments(args);
return fragment;
}
});
vp.setOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageSelected(int arg0) {
// TODO Auto-generated method stub
vp.setCurrentItem(arg0); // 導航
selectTab(arg0); // 改變字體顏色
ChangeView(arg0);
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
// TODO Auto-generated method stub
}
@Override
public void onPageScrollStateChanged(int arg0) {
// TODO Auto-generated method stub
}
});
}
public void initbutton() {
// TODO Auto-generated method stub
for (int i = 0; i < rg.getChildCount(); i++) {
RadioButton but = (RadioButton) rg.getChildAt(i);
final int index = i;
// 事件
but.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
// 切換視圖
vp.setCurrentItem(index);
// 導航
selectTab(index);
// 改變字體顏色
ChangeView(index);
}
});
}
user_img.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
menu.showMenu();
}
});
sou_img.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = new Intent(ShouyeActivity.this, SousuoActivity.class);
startActivity(intent);
}
});
}
public void fragmentList() {
// TODO Auto-generated method stub
flist = new ArrayList<Fragment>();
for (int i = 0; i < rg.getChildCount(); i++) {
MyFragment frg = new MyFragment();
flist.add(frg);
}
}
public void ChangeView(int tag) {
// TODO Auto-generated method stub
for (int i = 0; i < rg.getChildCount(); i++) {
RadioButton rb = (RadioButton) rg.getChildAt(i);
if (tag == i) {
rb.setTextColor(Color.RED);
} else {
rb.setTextColor(Color.GRAY);
}
}
}
public void selectTab(int index) {
// TODO Auto-generated method stub
int childCount = rg.getChildCount();
for (int i = 0; i < childCount; i++) {
View child = rg.getChildAt(i);
child.setSelected(i == index);
}
View curTabView = rg.getChildAt(index);
int left = curTabView.getLeft();
int width = curTabView.getMeasuredWidth();
int toX = left + width / 2 - widths / 2;
hs.smoothScrollTo(toX, 0);
}
}
今日頭條的首頁
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.