package com.yyq.today_news.activity;
import java.util.ArrayList;
import java.util.List;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.app.FragmentTransaction;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnTouchListener;
import android.view.ViewGroup.LayoutParams;
import android.widget.HorizontalScrollView;
import android.widget.ImageView;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
import com.jeremyfeinstein.slidingmenu.lib.SlidingFragmentActivity;
import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu;
import com.lidroid.xutils.BitmapUtils;
import com.yyq.nowday.bean.ChannelItem;
import com.yyq.nowday.bean.ChannelManage;
import com.yyq.nowday.fragment.Beijing_Fragment;
import com.yyq.nowday.fragment.Hotspot_Fragment;
import com.yyq.nowday.fragment.LeftMenuFragment;
import com.yyq.nowday.fragment.Recommend_Fragment;
import com.yyq.nowday.fragment.RightMenuFragment;
import com.yyq.nowday.fragment.Video_Fragment;
import com.yyq.nowday.view.CircleImageView;
import com.yyq.today_news.R;
import com.yyq.today_news.application.MyApplication;
public class MainActivity extends SlidingFragmentActivity {
private FragmentManager fm;
private FragmentTransaction ft;
private ImageView iv_title_eft;
private ImageView iv_title_right;
private ViewPager viewpager;
private HorizontalScrollView h_scrollview;
private RadioGroup rg;
private ImageView add;
private CircleImageView title_left;
private int x; //触摸x坐标
ArrayList<ChannelItem> userChannelList = new ArrayList<ChannelItem>();
ArrayList<String> tabTitle=new ArrayList<String>();
private List<Fragment> fragmentlist;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
registerReceiver(new Login_translate(),
new IntentFilter("com.test.login"));
setSliding();
init();
initScrolView();
listeners();
}
class Login_translate extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String username = intent.getStringExtra("username");
String url = intent.getStringExtra("url");
System.out.println(url+"------------");
BitmapUtils bitmapUtils = new BitmapUtils(MainActivity.this);
bitmapUtils.display(title_left,url);
}
}
/**
* 监听
*/
private void listeners() {
rg.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
viewpager.setCurrentItem(checkedId);
}
});
viewpager.setOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageSelected(int arg0) {
rg.getChildAt(arg0).performClick();
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
}
@Override
public void onPageScrollStateChanged(int arg0) {
}
});
viewpager.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
int action = event.getAction();
switch (action) {
case MotionEvent.ACTION_DOWN:
x = (int) event.getX();
break;
case MotionEvent.ACTION_MOVE:
int temp = (int) (event.getX() - x);
if (temp > 0 && viewpager.getCurrentItem() == 0) {
MainActivity.this.getSlidingMenu().setSlidingEnabled(true);
} else if (temp < 0
&& viewpager.getCurrentItem() == viewpager.getAdapter()
.getCount() - 1) {
MainActivity.this.getSlidingMenu().setSlidingEnabled(true);
} else {
MainActivity.this.getSlidingMenu().setSlidingEnabled(false);
}
break;
}
return false;
}
});
iv_title_eft.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
getSlidingMenu().toggle();
}
});
iv_title_right.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
getSlidingMenu().showSecondaryMenu();
}
});
add.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent=new Intent(MainActivity.this,Channel_Activity.class);
startActivityForResult(intent, 1);
}
});
}
@Override
protected void onActivityResult(int arg0, int arg1, Intent arg2) {
super.onActivityResult(arg0, arg1, arg2);
System.out.println("111111111111111"+userChannelList.size());
}
/**
* 加载标题栏
*/
private void initScrolView() {
rg.removeAllViews();
userChannelList = ((ArrayList<ChannelItem>)ChannelManage.
getManage(MyApplication.getApp().getSQLHelper()).getUserChannel());
System.out.println("2222222222222222222"+userChannelList.size());
for (ChannelItem i : userChannelList) {
tabTitle.add(i.getName());
}
for (int i = 0; i < tabTitle.size(); i++) {
RadioButton rb = (RadioButton) LayoutInflater.from(this).inflate(
R.layout.item_title, null);
rb.setId(i);
rb.setText(tabTitle.get(i));
rb.setLayoutParams(new LayoutParams(50, LayoutParams.MATCH_PARENT));
rg.addView(rb);
}
}
/**
* 记载控件
*/
private void init() {
buildData();
viewpager = (ViewPager) findViewById(R.id.mViewPager);
h_scrollview = (HorizontalScrollView) findViewById(R.id.menu_settings);
rg = (RadioGroup) findViewById(R.id.rg_nav_content);
iv_title_eft = (ImageView) findViewById(R.id.iv_title_left);
iv_title_right = (ImageView) findViewById(R.id.iv_title_right);
add=(ImageView) findViewById(R.id.button_more_columns);
title_left=(CircleImageView) findViewById(R.id.iv_title_left);
MyFragmentPagerAdapter myFragmentPagerAdapter = new MyFragmentPagerAdapter(
getSupportFragmentManager()); //适配器
viewpager.setAdapter(myFragmentPagerAdapter);
}
/**
* 数据建立
*/
private void buildData() {
fragmentlist = new ArrayList<Fragment>();
fragmentlist.add(new Recommend_Fragment());
fragmentlist.add(new Hotspot_Fragment());
fragmentlist.add(new Beijing_Fragment());
fragmentlist.add(new Video_Fragment());
}
/**
* 左右侧滑设置
*/
private void setSliding() {
getSlidingMenu().setMode(SlidingMenu.LEFT_RIGHT);
getSlidingMenu().setBehindOffset(60);
getSlidingMenu().setFadeDegree(0.2f);
getSlidingMenu().setTouchModeAbove(SlidingMenu.TOUCHMODE_MARGIN);
setBehindContentView(R.layout.left_menu_framelayout);
fm = getSupportFragmentManager();
ft = fm.beginTransaction();
ft.replace(R.id.left_menu_framelayout, new LeftMenuFragment());
getSlidingMenu().setSecondaryMenu(R.layout.right_menu_framelayout);
ft.replace(R.id.right_menu_framelayout, new RightMenuFragment());
ft.commit();
}
class MyFragmentPagerAdapter extends FragmentPagerAdapter {
public MyFragmentPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int arg0) {
return fragmentlist.get(arg0);
}
@Override
public int getCount() {
return fragmentlist.size();
}
}
@Override
protected void onRestart() {
// TODO Auto-generated method stub
super.onRestart();
}
}
SlidingMenu
最新推荐文章于 2025-06-04 13:08:53 发布
1341

被折叠的 条评论
为什么被折叠?



