Android(安卓)ListView使用方法
16lz
2021-01-26
package cn.jinbi.app;import java.io.File;import java.util.ArrayList;import java.util.Date;import java.util.HashMap;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.AdapterView;import android.widget.AdapterView.OnItemClickListener;import android.widget.AdapterView.OnItemLongClickListener;import android.widget.Button;import android.widget.EditText;import android.widget.ListView;import android.widget.SimpleAdapter;import android.widget.TextView;public class HistroyActivity extends Activity{private EditText search;private Button chick;private ListView listView;private ArrayList<HashMap<String,Object>> list;private final String pathname = "../data/data/cn.jinbi.app/files";@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_histroy);startInit();showList(pathname);chick.setOnClickListener(new chickOnClickListener());listView.setOnItemClickListener(new ItemClickListener());listView.setOnItemLongClickListener(new ItemLongClickListener());}private void startInit(){search = (EditText)findViewById(R.id.filename);chick = (Button)findViewById(R.id.search);listView = (ListView)findViewById(R.id.listhistroy);} private final void showList(String passname){list = new ArrayList<HashMap<String,Object>>();HashMap<String,Object> map ;File file = new File(passname);File[] childFiles = file.listFiles();if (childFiles == null) return ;for(File files:childFiles){ map = new HashMap<String,Object>(); /*文件的名字*/ map.put("name", files.getName()); /*文件创建的时间*/ Date date = new Date(files.lastModified()); String time = (date.getMonth()+1)+"/"+date.getDate(); map.put("time", time); list.add(map);}SimpleAdapter simpleAdapter = new SimpleAdapter(this, list, R.layout.list_histroy, new String[]{"time","name"}, new int[]{R.id.time,R.id.name});listView.setAdapter(simpleAdapter);}public class ItemClickListener implements OnItemClickListener{@Overridepublic void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3) {TextView text = (TextView)arg1.findViewById(R.id.name);Bundle data = new Bundle();data.putString("name", text.getText().toString());Intent intent = new Intent();intent.putExtras(data);intent.setClass(HistroyActivity.this, ResultActivity.class);startActivity(intent);}}private class chickOnClickListener implements OnClickListener{@Overridepublic void onClick(View v) {list.clear();HashMap<String, Object>map;String textName = search.getText().toString();File file = new File(pathname);File[] childFiles = file.listFiles();if (childFiles == null)return ;for(File files:childFiles){if(files.getName().contains(textName)){map = new HashMap<String,Object>();String filename = files.getName().toString();map.put("name", filename);Date date = new Date(files.lastModified());String time = date.getMonth()+"/"+date.getDate();map.put("time", time); list.add(map);}}SimpleAdapter adapter= (SimpleAdapter)listView.getAdapter();adapter.notifyDataSetChanged();}}private class ItemLongClickListener implements OnItemLongClickListener{@Overridepublic boolean onItemLongClick(AdapterView<?> arg0, View arg1,int arg2, long arg3) {TextView text = (TextView)arg1.findViewById(R.id.name);String name = text.getText().toString();HashMap<String, Object>map;list.clear();File file = new File(pathname);File[] childFiles = file.listFiles();if (childFiles == null)return false;for (File files:childFiles){if (files.getName().equals(name)){files.delete();}else{map = new HashMap<String, Object>();map.put("name", files.getName());Date date =new Date(files.lastModified());String time = date.getMonth()+"/"+date.getDay();map.put("time", time);list.add(map);}}SimpleAdapter adapter = (SimpleAdapter)listView.getAdapter();adapter.notifyDataSetChanged();return true;}}}
更多相关文章
- 创建文件并进行读写
- clock时钟
- 多线程下载测试TestDownload
- Android(安卓)log日志输出到文件
- Android(安卓)EditText禁止复制粘贴
- Android(安卓)TabWidget
- 自写登录页面空间水平、垂直居中xml配置文件
- Android(安卓)搜索框自动提示及其保存历史记录
- mtk android settings