当前位置: 首页 > news >正文

宝应网站设计电子版简历免费的

宝应网站设计,电子版简历免费的,公司形象墙设计图,电商网站策划书本文主要讲解实现了一个CSDN的安卓客户端#xff0c;主要知识点如下 java爬虫获取网页数据 将java程序打包成jar包 FragmentviewpagerTabPageIndicator实现Tab效果 gestureImageView实现放大缩小图片imageLodar实现异步加载图上 XListView实现下拉刷新 java爬虫获取网页资源…本文主要讲解实现了一个CSDN的安卓客户端主要知识点如下 java爬虫获取网页数据 将java程序打包成jar包 FragmentviewpagerTabPageIndicator实现Tab效果 gestureImageView实现放大缩小图片imageLodar实现异步加载图上 XListView实现下拉刷新 java爬虫获取网页资源 package com.zhy.biz; import java.util.ArrayList; import java.util.List; import org.jsoup.Jsoup; import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; import org.jsoup.select.Elements; import com.zhy.bean.CommonException; import com.zhy.bean.NewsItem; import com.zhy.csdn.DataUtil; import com.zhy.csdn.URLUtil; /** * 处理NewItem的业务类 * author zhy * */ public class NewsItemBiz { /** * 业界、移动、云计算 * * param htmlStr * return * throws CommonException */ public ListNewsItem getNewsItems( int newsType , int currentPage) throws CommonException { String urlStr URLUtil.generateUrl(newsType, currentPage); String htmlStr DataUtil.doGet(urlStr); ListNewsItem newsItems new ArrayListNewsItem(); NewsItem newsItem null; Document doc Jsoup.parse(htmlStr); Elements units doc.getElementsByClass(unit); for (int i 0; i units.size(); i) { newsItem new NewsItem(); newsItem.setNewsType(newsType); Element unit_ele units.get(i); Element h1_ele unit_ele.getElementsByTag(h1).get(0); Element h1_a_ele h1_ele.child(0); String title h1_a_ele.text(); String href h1_a_ele.attr(href); newsItem.setLink(href); newsItem.setTitle(title); Element h4_ele unit_ele.getElementsByTag(h4).get(0); Element ago_ele h4_ele.getElementsByClass(ago).get(0); String date ago_ele.text(); newsItem.setDate(date); Element dl_ele unit_ele.getElementsByTag(dl).get(0);// dl Element dt_ele dl_ele.child(0);// dt try {// 可能没有图片 Element img_ele dt_ele.child(0); String imgLink img_ele.child(0).attr(src); newsItem.setImgLink(imgLink); } catch (IndexOutOfBoundsException e) { } Element content_ele dl_ele.child(1);// dd String content content_ele.text(); newsItem.setContent(content); newsItems.add(newsItem); } return newsItems; } } 详细实现参见链接 抓取csdn上的各类别的文章 制作csdn app 二 - Hongyang - 博客频道 - CSDN.NET 将java项目打包成jar包 参考链接在Eclipse中将Java项目打包为jar - 闵开慧的个人页面 - 开源中国社区 FragmentviewpagerTabPageIndicator实现Tab效果 package com.zhy.csdndemo; import com.viewpagerindicator.TabPageIndicator; import android.os.Bundle; import android.support.v4.app.FragmentActivity; import android.support.v4.app.FragmentPagerAdapter; import android.support.v4.view.ViewPager; public class MainActivity extends FragmentActivity { private TabPageIndicator mIndicator ; private ViewPager mViewPager ; private FragmentPagerAdapter mAdapter ; Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mIndicator (TabPageIndicator) findViewById(R.id.id_indicator); mViewPager (ViewPager) findViewById(R.id.id_pager); mAdapter new TabAdapter(getSupportFragmentManager()); mViewPager.setAdapter(mAdapter); mIndicator.setViewPager(mViewPager, 0); } } 详细实现参见链接 Android 使用FragmentViewPagerIndicator 制作csdn app主要框架 - Hongyang - 博客频道 - CSDN.NET viewPager的适配器 package com.zhy.csdndemo;import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter;public class TabAdapter extends FragmentPagerAdapter {public static final String[] TITLES new String[] { 业界, 移动, 研发, 程序员杂志, 云计算 };public TabAdapter(FragmentManager fm){super(fm);}Overridepublic Fragment getItem(int arg0){MainFragment fragment new MainFragment(arg01);return fragment;}Overridepublic CharSequence getPageTitle(int position){return TITLES[position % TITLES.length];}Overridepublic int getCount(){return TITLES.length;}} viewPager中的Fragment实现其中用xListView实现了获取数据与刷新等功能 package com.zhy.csdndemo;import java.util.ArrayList; import java.util.List;import me.maxwin.view.IXListViewLoadMore; import me.maxwin.view.IXListViewRefreshListener; import me.maxwin.view.XListView; import android.annotation.SuppressLint; import android.os.AsyncTask; import android.os.Bundle; import android.support.v4.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup;import com.zhy.bean.CommonException; import com.zhy.bean.NewsItem; import com.zhy.biz.NewsItemBiz; import com.zhy.csdn.Constaint; import com.zhy.csdndemo.adapter.NewsItemAdapter;SuppressLint(ValidFragment) public class MainFragment extends Fragment implements IXListViewRefreshListener, IXListViewLoadMore {/*** 默认的newType*/private int newsType Constaint.NEWS_TYPE_YEJIE;/*** 当前页面*/private int currentPage 1;/*** 处理新闻的业务类*/private NewsItemBiz mNewsItemBiz;/*** 扩展的ListView*/private XListView mXListView;/*** 数据适配器*/private NewsItemAdapter mAdapter;/*** 数据*/private ListNewsItem mDatas new ArrayListNewsItem();/*** 获得newType* param newsType*/public MainFragment(int newsType){this.newsType newsType;mNewsItemBiz new NewsItemBiz();}Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){return inflater.inflate(R.layout.tab_item_fragment_main, null);}Overridepublic void onActivityCreated(Bundle savedInstanceState){super.onActivityCreated(savedInstanceState);mAdapter new NewsItemAdapter(getActivity(), mDatas);/*** 初始化*/mXListView (XListView) getView().findViewById(R.id.id_xlistView);mXListView.setAdapter(mAdapter);mXListView.setPullRefreshEnable(this);mXListView.setPullLoadEnable(this);//mXListView.NotRefreshAtBegin();/*** 进来时直接刷新*/mXListView.startRefresh();}Overridepublic void onRefresh(){new LoadDatasTask().execute();}Overridepublic void onLoadMore(){// TODO Auto-generated method stub}/*** 记载数据的异步任务* author zhy**/class LoadDatasTask extends AsyncTaskVoid, Void, Void{Overrideprotected Void doInBackground(Void... params){try{ListNewsItem newsItems mNewsItemBiz.getNewsItems(newsType, currentPage);mDatas newsItems;} catch (CommonException e){// TODO Auto-generated catch blocke.printStackTrace();}return null;}Overrideprotected void onPostExecute(Void result){mAdapter.addAll(mDatas);mAdapter.notifyDataSetChanged();mXListView.stopRefresh();}}} xListView的adapter,其中使用了imageLoder package com.zhy.csdndemo.adapter;import java.util.List;import android.content.Context; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.TextView;import com.nostra13.universalimageloader.core.DisplayImageOptions; import com.nostra13.universalimageloader.core.ImageLoader; import com.nostra13.universalimageloader.core.ImageLoaderConfiguration; import com.nostra13.universalimageloader.core.display.FadeInBitmapDisplayer; import com.nostra13.universalimageloader.core.display.RoundedBitmapDisplayer; import com.zhy.bean.NewsItem; import com.zhy.csdn.DataUtil; import com.zhy.csdndemo.R;public class NewsItemAdapter extends BaseAdapter {private LayoutInflater mInflater;private ListNewsItem mDatas;/*** 使用了github开源的ImageLoad进行了数据加载*/private ImageLoader imageLoader ImageLoader.getInstance();private DisplayImageOptions options;public NewsItemAdapter(Context context, ListNewsItem datas){this.mDatas datas;mInflater LayoutInflater.from(context);imageLoader.init(ImageLoaderConfiguration.createDefault(context));options new DisplayImageOptions.Builder().showStubImage(R.drawable.images).showImageForEmptyUri(R.drawable.images).showImageOnFail(R.drawable.images).cacheInMemory().cacheOnDisc().displayer(new RoundedBitmapDisplayer(20)).displayer(new FadeInBitmapDisplayer(300)).build();}public void addAll(ListNewsItem mDatas){this.mDatas.addAll(mDatas);}Overridepublic int getCount(){return mDatas.size();}Overridepublic Object getItem(int position){return mDatas.get(position);}Overridepublic long getItemId(int position){return position;}Overridepublic View getView(int position, View convertView, ViewGroup parent){ViewHolder holder null;if (convertView null){convertView mInflater.inflate(R.layout.news_item_yidong, null);holder new ViewHolder();holder.mContent (TextView) convertView.findViewById(R.id.id_content);holder.mTitle (TextView) convertView.findViewById(R.id.id_title);holder.mDate (TextView) convertView.findViewById(R.id.id_date);holder.mImg (ImageView) convertView.findViewById(R.id.id_newsImg);convertView.setTag(holder);} else{holder (ViewHolder) convertView.getTag();}NewsItem newsItem mDatas.get(position);holder.mTitle.setText(DataUtil.ToDBC(newsItem.getTitle()));holder.mContent.setText(newsItem.getContent());holder.mDate.setText(newsItem.getDate());if (newsItem.getImgLink() ! null){holder.mImg.setVisibility(View.VISIBLE);imageLoader.displayImage(newsItem.getImgLink(), holder.mImg, options);} else{holder.mImg.setVisibility(View.GONE);}return convertView;}private final class ViewHolder{TextView mTitle;TextView mContent;ImageView mImg;TextView mDate;}}参考链接 客户端上显示csdn上的各类别下的的文章列表 制作csdn app 三 - Hongyang - 博客频道 - CSDN.NET 效果如下
http://www.zqtcl.cn/news/682848/

相关文章:

  • 两学一做网上答题网站做网站域名是赠送的吗
  • 江苏住房城乡建设厅网站WordPress上传Excel
  • 广州淘宝网站建设济南高新区网站建设
  • 如何注册一个网站长沙的科技公司
  • 温州网络公司网站建设永久免费云linux服务器网页
  • 中国教育网站官网网站建设是半年的持久战
  • 为什么营销型网站比普通网站建站贵常州seo排名收费
  • 商贸公司寮步网站建设极致发烧学网站建设基础
  • 二手汽车手机网站模板四川百度推广排名查询
  • 做火情监控网站需要用什么系统做一个网站多少费用
  • 成都建设网站首页贺州网站建设
  • 硚口区建设局网站海绵宝宝的网页设计html源代码
  • 旅游网站建设合同成年做羞羞的视频网站
  • 海门网站建设制作道德建设 网站
  • 苏州 规划建设局网站网页设计师培训费用图
  • 怎么做视频解析的网站QQ空间可以建设网站吗
  • 视频网站 php源码甘肃 网站建设
  • 响应式网站和自适应便宜做网站8818
  • 湖南网站建设mxtia网站建设的流程图
  • 西安网站开发公司电话装修设计网站有哪些
  • 多少钱网站建设个人主页网页设计教程
  • 嘉兴品牌网站建设网站开发项目拖延周期
  • 网站版面布局结构网站建设公司公司
  • 给新公司建网站中国互联网企业排名前十名
  • 中国建设银行网站会员用户名网站建设应列入啥费用
  • 网站上面的水印怎么做的广东网站建设公
  • 爱站网关键词长尾挖掘工具wordpress文章外链
  • 做视频剪辑接私活的网站网站商城系统设计
  • thinkphp5做网站做网站需要准备资料
  • 门户网站平台建设方案建e室内设计网cad