1.排序的方法
Collections.sort(list,new Comparator<CitynameBean>() {
@Override
public int compare(CitynameBean lhs, CitynameBean rhs) {
// TODO Auto-generated method stub
return lhs.getPycityname().compareTo(rhs.getPycityname());
}
});
2.访问网络图片的两种方式
一种是利用网络直接访问
这里使用的是volley框架
首先初始化请求队列
RequestQueue queue=Volley.newRequestQueue(this);
String urlpic = "http://b.hiphotos.baidu.com/image/pic/item/fc1f4134970a304e9ce8639bd6c8a786c8175c8d.jpg";
ImageRequest req = new ImageRequest(urlpic, new Listener<Bitmap>() {
@Override
public void onResponse(Bitmap arg0) {
ImageView iv = (ImageView) findViewById(R.id.iv);
iv.setImageBitmap(arg0);
}
}, 0, 0, Bitmap.Config.RGB_565, null);
queue.add(req);
// 以下另一种加载图片方式
ImageLoader loader = new ImageLoader(queue, new ImageCache() {
LruCache<String, Bitmap> cache = new LruCache<String, Bitmap>(
(int) (Runtime.getRuntime().maxMemory() / 8)) {
protected int sizeOf(String key, Bitmap value) {
return value.getHeight() * value.getRowBytes();
};
};
@Override
public void putBitmap(String arg0, Bitmap arg1) {
cache.put(arg0, arg1);
}
@Override
public Bitmap getBitmap(String arg0) {
return cache.get(arg0);
}
});
ImageView iv = (ImageView) findViewById(R.id.iv);
ImageListener listener = ImageLoader.getImageListener(iv,
R.drawable.ic_launcher, R.drawable.ic_launcher);
loader.get(urlpic, listener);
3.添加侧滑菜单slidingmenu
导入jeremyfeinstein文件,就直接可以用了
private void initSlidingMenu() {
SlidingMenu menu = new SlidingMenu(this);
menu.setMode(SlidingMenu.LEFT);
menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
menu.setShadowWidth(10);
//menu.setShadowDrawable(R.drawable.hdpi);
menu.setBehindOffset(200);
menu.setFadeDegree(0.35f);
menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);
//设置里面的布局
menu.setMenu(R.layout.menu);
}
4添加下拉刷新的功能
PullToRefresh系列中的PullToRefreshListView
用法请参考官方实例代码的PullToRefreshListActivity的写法
使用时的基本步骤:
1)在布局文件中写XML
2)获得布局文件中声明的 PullToRefreshListView对象
3)设定下拉刷新监听器,如果还有其他需要可以继续设置其他监听器
4)设置PullToRefreshListView的下拉方式(下拉,下拉和上推)
5)获得PullToRefreshListView中包含的ListView,并为其绑定适配器和数据源
mPullRefreshListView = (PullToRefreshListView) findViewById(R.id.pull_refresh_list);
mPullRefreshListView.setMode(PullToRefreshBase.Mode.PULL_FROM_START);
mPullRefreshListView.setOnRefreshListener(new OnRefreshListener<ListView>() {
@Override
public void onRefresh(PullToRefreshBase<ListView> refreshView) {
String label = DateUtils.formatDateTime(getApplicationContext(), System.currentTimeMillis(),
DateUtils.FORMAT_SHOW_TIME | DateUtils.FORMAT_SHOW_DATE | DateUtils.FORMAT_ABBREV_ALL);
// Update the LastUpdatedLabel
refreshView.getLoadingLayoutProxy().setLastUpdatedLabel(label);
// Do work to refresh the list here.
getWeather(tvCity.getText().toString());
}
});
// Add an end-of-list listener
mPullRefreshListView.setOnLastItemVisibleListener(new OnLastItemVisibleListener() {
@Override
public void onLastItemVisible() {
Toast.makeText(MainActivity.this, "最后一个了!", Toast.LENGTH_SHORT).show();
}
});
相关文章
- 2019-2-24-VisualStudio-过滤输出窗口文本
- 2019-2-3-VisualStudio-扩展开发-添加输出窗口
- IOS 100 - level2 Boss
- oracle函数nvl,nvl2的区别,nullif函数,coalesce函数
- libeXosip2(1-2) -- How-To initiate, modify or terminate calls.
- 并发编程 - 协程 - 1.协程概念/2.greenlet模块/3.gevent模块/4.gevent实现并发的套接字通信
- FPGA Asynchronous FIFO设计思路(2)
- Struts2常用标签总结
- mkyaffs2image制作根文件系统、使用NFS挂载虚拟机目录(2)
- Distributed Phoenix Chat with PubSub PG2 adapter