zoukankan      html  css  js  c++  java
  • ui android需要解决的问题

    1. layoutInflator

    2. 在没有activity的情况下调用layout怎么实现

    3.动画

    4.webview

    5.grid view中嵌套viewpager

    6.不规则布局

    JSONArray

    ViewFilpper

    ViewFlow

    http://www.cnblogs.com/TerryBlog/archive/2012/02/17/2355753.html

     http://www.javacodegeeks.com/2013/04/android-tutorial-using-the-viewpager.html

    public class MenuGridView {
    	
    	private View v;
    	private JSONArray mJsonArray;
    	
    	//just for test
    	
    
    	public MenuGridView(LayoutInflater inflater, ViewGroup container) {
    		v = inflater.inflate(R.layout.gridview, container, false);
    
    	}
    
    	public void PlainGridView(
    			GridView gridview, Activity activity){
    		//View v = inflater.inflate(R.layout.gridview, container, false);
    
    		ArrayList<HashMap<String, Object>> menuImageItem = new ArrayList<HashMap<String, Object>>();
    		for (int i = 0; i < 6; i++) {
    			HashMap<String, Object> map = new HashMap<String, Object>();
    			map.put("ImageItem", R.drawable.submenu);
    			map.put("TextItem", "The " + String.valueOf(i));
    			menuImageItem.add(map);
    		}
    		GridViewAdapter menuItemAdapter = new GridViewAdapter(activity,
    				menuImageItem, R.layout.gridmenuitem, new String[] {
    						"ImageItem", "TextItem" }, new int[] { R.id.ItemImage,
    						R.id.ItemText });
    		gridview.setAdapter(menuItemAdapter);
    	}
    	
    	public void ViewPagerGridView(int albumCount, ViewPager mViewPager, FragmentManager mFragMgr, GridView gridview, Activity activity){
    
    		//ViewPager mViewPager = (ViewPager)findViewById(R.id.viewpager);
    		//mViewPagerAdapter = new ViewPagerAdapter(this,mJsonArray);
    		//mViewPager.setAdapter(mViewPagerAdapter);
    		
    		ArrayList<HashMap<String, Object>> menuImageItem = new ArrayList<HashMap<String, Object>>();
    		//set 1
    		HashMap<String, Object> map = new HashMap<String, Object>();
    		map.put("fragment", value);
    		
    		
    		// Todo: use albumCount to design the fragment
    		List<Fragment> fragmentList= new ArrayList<Fragment>(); 
    		List<String> titleList = new ArrayList<String>();
    		fragmentList.add(new ViewPagerFragment("1"));
    		fragmentList.add(new ViewPagerFragment("status_page"));
    		titleList.add("1_title");
    		titleList.add("status page_title");
    		ViewPagerFragmentAdapter mViewPagerAdapter;
    		mViewPagerAdapter = new ViewPagerFragmentAdapter(mFragMgr,fragmentList,titleList);
    		mViewPager.setAdapter(mViewPagerAdapter);
    		
    		
    		//set the adapter for the gridview
    		GridViewAdapter menuItemAdapter = new GridViewAdapter(activity,
    				menuImageItem, R.layout.view_pager_fragment_demo2, new String[] {
    						"ImageItem", "TextItem" }, new int[] { R.id.ItemImage,
    						R.id.ItemText });
    		
    		
    		gridview.setAdapter(menuItemAdapter);
    		
    	}
    
    
    }
    

      

    public class ViewPagerFragment extends Fragment {
    
    	private String text;
    	private TextView tv = null;
    
    	// todo: 考虑将layout 也通过参数传进来,利于复用
    
    	public ViewPagerFragment(String text) {
    		super();
    		this.text = text;
    
    	}
    
    	@Override
    	public View onCreateView(LayoutInflater inflater, ViewGroup container,
    			Bundle savedInstanceState) {
    
    		if (text.equals("main_page")) {
    			
    			
    			View v = inflater.inflate(R.layout.gridview, container, false);
    			GridView gridview = (GridView) v.findViewById(R.id.gridview);
    			MenuGridView menuGridView = new MenuGridView(inflater, container);
    			
    			//test for the plain grid view
    			//menuGridView.PlainGridView(gridview, (Activity) getActivity());
    			
    			//test for the grid view contains view pager 
    			View v2 = inflater.inflate(R.layout.viewpagergrid,container,false);
    			ViewPager mViewPager = (ViewPager)v2.findViewById(R.id.viewpagergrid);
    			
    			menuGridView.ViewPagerGridView(2, mViewPager, getActivity().getSupportFragmentManager(),gridview,(Activity) getActivity());
    
    			return v;
    
    		} 
    		else if(text.equals("status_page")){
    			View v = inflater.inflate(R.layout.view_pager_fragment_demo2,
    					container, false);
    			
    			return v;
    		}
    		
    		else{
    			View v = inflater.inflate(R.layout.view_pager_fragment_demo,
    					container, false);
    			tv = (TextView) v.findViewById(R.id.viewPageText);
    			tv.setText(text);
    			return v;
    		}
    
    	}
    
    }
    

      

  • 相关阅读:
    通过引入SiteMesh的JSP标签库,解决Freemarker与SiteMesh整合时,自定义SiteMesh标签的问题
    我为什么要写FansUnion个人官网-BriefCMS-电子商务malling等系统
    我为什么要写FansUnion个人官网-BriefCMS-电子商务malling等系统
    天龙八部回归记
    天龙八部回归记
    到底要不要买彩票,纠结了
    到底要不要买彩票,纠结了
    与Boss大雷探讨JavaWeb开发、电商与网络安全
    与Boss大雷探讨JavaWeb开发、电商与网络安全
    Fiori里花瓣的动画效果实现原理
  • 原文地址:https://www.cnblogs.com/lauraxia/p/3129829.html
Copyright © 2011-2022 走看看