編輯:關於Android編程
list = (ListView) findViewById(R.id.all_teacher_list); // 生成動態數組,加入數據 ArrayList> listItem = new ArrayList >(); for (int i = 0; i < 20; i++) { HashMap map = new HashMap (); // map.put(ItemImage, R.drawable.checked);//圖像資源的ID map.put(teachername, 幼兒園按照時間可以分為宿制幼兒園); map.put(teacherdetail, 這是一片關於幼兒知識的文章,特點是簡單易讀,很實用); map.put(image, R.drawable.blue); listItem.add(map); } // 生成適配器的Item和動態數組對應的元素 SimpleAdapter listItemAdapter = new SimpleAdapter(this, listItem,// 數據源 R.layout.all_child_edu_item,// ListItem的XML實現 // 動態數組與ImageItem對應的子項 new String[] { teachername, teacherdetail, image }, // ImageItem的XML文件裡面的一個ImageView,兩個TextView ID new int[] { R.id.all_child_edu_name, R.id.all_child_edu_detail, R.id.all_child_edu_image }); // 添加並且顯示 list.setAdapter(listItemAdapter);
如果需要將網絡或文件中的圖片放到listview中,需要先將圖片轉換為bitmap格式,然後重寫setViewBinder()方法
annolistItemAdapter.setViewBinder(new ViewBinder() {
public boolean setViewValue(View view, Object data,
String textRepresentation) {
// 判斷是否為我們要處理的對象
if (view instanceof ImageView && data instanceof Bitmap) {
ImageView iv = (ImageView) view;
iv.setImageBitmap((Bitmap) data);
return true;
} else
return false;
}
});
list.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView arg0, View arg1, int arg2,
long arg3) {
// TODO Auto-generated method stub
//點擊第arg2個item的監聽事件
}
});
增加下拉刷新,通過判斷第last個是否為最後一個(即count個),進行刷新。
list.setOnScrollListener(new OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
// TODO Auto-generated method stub
if (last == count
&& scrollState == this.SCROLL_STATE_IDLE) {
updatevideo();
// Toast.makeText(AllSchoolNewsActivity.this, 下拉刷新,
// Toast.LENGTH_LONG).show();
}
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {
// TODO Auto-generated method stub
last = firstVisibleItem + visibleItemCount; // 減1是因為上面加了個addFooterView
}
});
Android源碼編譯之Nexus5真機編譯
1.前言在Android安全的研究工作中,我們時常要對Android進行改進並對其進行源碼編譯,由於目前幾乎所有的手機廠商均對其底層驅動實行封閉政策,導致我們在完成And
解決eclipse3.7沒有自動提示代碼方法
把Android SDK升級到了最新版本,但是Eclipse的ADT插件需要Eclipse3.6版本以上才可以安裝,無奈下載了Eclipse3.7版本的。一
Android持久化技術之SharedPreferences存儲實例詳解
本文實例講述了Android持久化技術之SharedPreferences存儲。分享給大家供大家參考,具體如下:1、SharedPreferences存儲在前面一篇文章《
Gradle自定義插件
Gradle自定義插件在Gradle中創建自定義插件,Gradle提供了三種方式:在build.gradle腳本中直接使用 在buildSrc中使用 在獨立Module中