• 【Android】 分享一个完整的项目,适合新手!


    写这个app之前是因为看了头条的一篇文章:http://www.managershare.com/post/155110,然后心想要不做一个这样的app,让手机计算就行了。也就没多想就去开始整了。

     
    项目用到了三个开源包:
     
     
    使用方法:
    1.在Appliction的onCreate里初始化
    /**
    	 * 初始化imageLoader
    	 */
    	public void initImageLoader() {
    		File cacheDir = StorageUtils.getCacheDirectory(getApplicationContext());
    		ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(
    				getApplicationContext())
    				.memoryCache(new LruMemoryCache(5 * 1024 * 1024))
    				.memoryCacheSize(10 * 1024 * 1024)
    				.discCache(new UnlimitedDiscCache(cacheDir))
    				.discCacheFileNameGenerator(new HashCodeFileNameGenerator())
    				.build();
    		ImageLoader.getInstance().init(config);
    	}
    
    	public DisplayImageOptions getOptions(int drawableId) {
    		return new DisplayImageOptions.Builder().showImageOnLoading(drawableId)
    				.showImageForEmptyUri(drawableId).showImageOnFail(drawableId)
    				.resetViewBeforeLoading(true).cacheInMemory(true)
    				.cacheOnDisc(true).imageScaleType(ImageScaleType.EXACTLY)
    				.bitmapConfig(Bitmap.Config.RGB_565).build();
    	}
    

      2.使用时调用:

    ImageLoader.getInstance().displayImage(
    					avatarUrl,
    					holder.mImage,
    					MyApplication.getInstance().getOptions(
    							R.drawable.user_icon_default_main),
    					new SimpleImageLoadingListener() {
    						@Override
    						public void onLoadingComplete(String imageUri,
    								View view, Bitmap loadedImage) {
    							super.onLoadingComplete(imageUri, view, loadedImage);
    						}
    					});
     
     
    使用方法:
    // 设置PullToRefresh
    		mListView.setMode(Mode.BOTH);
    		mListView.setOnRefreshListener(new OnRefreshListener2<ListView>() {
    			// 下拉Pulling Down
    			@Override
    			public void onPullDownToRefresh(
    					PullToRefreshBase<ListView> refreshView) {
    				String label = DateUtils.formatDateTime(MainAct.this,
    						System.currentTimeMillis(), DateUtils.FORMAT_SHOW_TIME
    								| DateUtils.FORMAT_SHOW_DATE
    								| DateUtils.FORMAT_ABBREV_ALL);
    				refreshView.getLoadingLayoutProxy().setLastUpdatedLabel(label);
    				mListView.setMode(Mode.BOTH);
    				pullFromUser = true;
    				mRefreshType = RefreshType.REFRESH;
    				pageNum = 0;
    				lastItemTime = getCurrentTime();
    				//获取数据
    				fetchData();
    			}
    
    			// 上拉Pulling Up
    			@Override
    			public void onPullUpToRefresh(
    					PullToRefreshBase<ListView> refreshView) {
    				// 上拉的时候添加选项
    				mRefreshType = RefreshType.LOAD_MORE;
    				//获取数据
    				fetchData();
    			}
    
    		});
    		actualListView = mListView.getRefreshableView();
    		actualListView.setFastScrollEnabled(true);
    		mEntities = new ArrayList<RankEntity>();
    		mAdapter = new MainListAdapter(MainAct.this, mEntities);
    		actualListView.setAdapter(mAdapter);
    		if (mEntities.size() == 0) {
    			fetchData();
    		}
    		mListView.setState(State.RELEASE_TO_REFRESH, true);
    

      

     这个源码包有修改过,只使用了单选这个Fragment!内容比较多想看的下载代码吧
     
     
    项目虽然很渣很没新意,完成是出于一个瞬间的念头,开发完成后自己测试都觉得无聊,40多个选择,点到手抽筋!然后又加上了一个自动翻页的开关!
     
    网盘无积分下载:http://yunpan.cn/cAbWf2QVih6wV  提取码 9abb
     
    QQ:471497524
    微信:519659991
     
    新开的交流群,欢迎广州的开发者加入: http://jq.qq.com/?_wv=1027&k=cgvXpA,另外群里有一个HR需要找一位1年工作经验以上,能够独立开发App的安卓哥,正在找工作的一定要加这个群阿
     
    最后附截图:
  • 相关阅读:
    vue表格多级列表嵌套数据
    HTML5-企业宣传6款免费源码
    HTML5简介及HTML5的发展前景
    30几个HTML5经典动画应用回顾 让你大饱眼福
    2015年必火的五个Html5移动开发工具推荐
    HTML5几种常见的错误写法
    HTML5实现动画三种方式
    简单的圆形图标鼠标hover效果 | CSS3教程
    函数:声明和表达式
    前端工程之模块化
  • 原文地址:https://www.cnblogs.com/tefcricul/p/4124776.html
Copyright © 2020-2023  润新知