package my.act;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import android.app.Activity;
import android.os.Bundle;
import android.os.Parcelable;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.Window;
import android.view.ViewGroup.LayoutParams;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.GridView;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.SimpleAdapter;
import android.widget.TextView;
import my.act.R;
public class MultipageGriViewActivity extends Activity {
/** Called when the activity is first created. */
ViewPager viewPager;
ArrayList<View> list;
ViewGroup main, group;
ImageView imageView;
ImageView[] imageViews;
private GridView gridview;
private GridView gridview2;
private SimpleAdapter simpleadapter;
private SimpleAdapter simpleadapter2;
//GridView的网格图片
private int[] resIds = new int[] { R.drawable.ic_launcher, R.drawable.ic_launcher,
R.drawable.ic_launcher, R.drawable.ic_launcher,R.drawable.ic_launcher, R.drawable.ic_launcher,
R.drawable.ic_launcher,R.drawable.ic_launcher,R.drawable.ic_launcher,
R.drawable.ic_launcher,R.drawable.ic_launcher,R.drawable.ic_launcher};
private int[] resIds2 = new int[] { R.drawable.ic_launcher, R.drawable.ic_launcher};
String[] grid_name ={"基本信息设置","员工管理","物料管理","合作伙伴管理","合同管理","采购单管理"
,"收货单管理","退货单管理","数据报表","系统流程","关于平台","新手上路"};
String[] grid_name2 ={"基本信息设置","员工管理"};
private Map<String, Object> cell;//装载GridView数据的Map
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
LayoutInflater inflater = getLayoutInflater(); //LayoutInflater作用是将layout的xml布局文件实例化为View类对象
list = new ArrayList<View>();
list.add(inflater.inflate(R.layout.mian_ui, null));
list.add(inflater.inflate(R.layout.mian_ui, null));
gridview=(GridView)list.get(0).findViewById(R.id.gridView);
gridview2=(GridView)list.get(1).findViewById(R.id.gridView);
List<Map<String,Object>> cells=new ArrayList<Map<String,Object>>();
List<Map<String,Object>> cells2=new ArrayList<Map<String,Object>>();
for(int i=0;i<grid_name.length;i++){
cell=new HashMap<String,Object>();
cell.put("imageview", resIds[i]);
cell.put("name", grid_name[i]);
cells.add(cell);
}
for(int i=0;i<grid_name2.length;i++){
cell=new HashMap<String,Object>();
cell.put("imageview", resIds2[i]);
cell.put("name", grid_name2[i]);
cells2.add(cell);
}
//用Adapter绑定数据
simpleadapter=new SimpleAdapter(list.get(0).getContext(), cells,R.layout.cell,
new String[]{"imageview","name"},
new int[]{R.id.imageview,R.id.textView});
simpleadapter2=new SimpleAdapter(list.get(1).getContext(), cells2,R.layout.cell,
new String[]{"imageview","name"},
new int[]{R.id.imageview,R.id.textView});
gridview.setAdapter(simpleadapter);
gridview2.setAdapter(simpleadapter2);
gridview.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// TODO Auto-generated method stub
}
});
imageViews = new ImageView[list.size()];
ViewGroup main = (ViewGroup) inflater.inflate(R.layout.main, null);
// group是R.layou.main中的负责包裹小圆点的LinearLayout.
ViewGroup group = (ViewGroup) main.findViewById(R.id.viewGroup);
viewPager = (ViewPager) main.findViewById(R.id.viewPager1);
for (int i = 0; i < list.size(); i++) {
imageView = new ImageView(MultipageGriViewActivity.this);
imageView.setLayoutParams(new LayoutParams(10,10));
imageView.setPadding(10, 0, 10, 0);
imageViews[i] = imageView;
if (i == 0) {
// 默认进入程序后第一张图片被选中;
imageViews[i].setBackgroundResource(R.drawable.guide_dot_white);
} else {
imageViews[i].setBackgroundResource(R.drawable.guide_dot_black);
}
group.addView(imageView);
}
setContentView(main);
viewPager.setAdapter(new MyAdapter());
viewPager.setOnPageChangeListener(new MyListener());
}
class MyAdapter extends PagerAdapter {
@Override
public int getCount() {
return list.size();
}
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
return arg0 == arg1;
}
@Override
public int getItemPosition(Object object) {
// TODO Auto-generated method stub
return super.getItemPosition(object);
}
@Override
public void destroyItem(View arg0, int arg1, Object arg2) {
// TODO Auto-generated method stub
((ViewPager) arg0).removeView(list.get(arg1));
}
@Override
public Object instantiateItem(View arg0, int arg1) {
// TODO Auto-generated method stub
((ViewPager) arg0).addView(list.get(arg1));
return list.get(arg1);
}
@Override
public void restoreState(Parcelable arg0, ClassLoader arg1) {
// TODO Auto-generated method stub
}
@Override
public Parcelable saveState() {
// TODO Auto-generated method stub
return null;
}
@Override
public void startUpdate(View arg0) {
// TODO Auto-generated method stub
}
@Override
public void finishUpdate(View arg0) {
// TODO Auto-generated method stub
}
}
class MyListener implements OnPageChangeListener {
@Override
public void onPageScrollStateChanged(int arg0) {
// TODO Auto-generated method stub
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
// TODO Auto-generated method stub
}
@Override
public void onPageSelected(int arg0) {
imageViews[arg0]
.setBackgroundResource(R.drawable.guide_dot_white);
for (int i = 0; i < imageViews.length; i++) {
if (arg0 != i) {
imageViews[i]
.setBackgroundResource(R.drawable.guide_dot_black);
}
}
}
}
// public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
// // TODO Auto-generated method stub
// switch (arg2) {
// case 0:
//
// break;
// case 1:
//
// break;
// case 2:
//
// break;
// case 3:
//
// break;
// case 4:
//
// break;
// case 5:
//
// break;
// }
// }
}