package com.example.listscoller; import android.app.AlertDialog; import android.app.ProgressDialog; import android.content.DialogInterface; import android.os.Handler; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.AbsListView; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.ListView; import java.util.ArrayList; import java.util.List; public class MainActivity extends AppCompatActivity { private ListView listview; ArrayAdapter<Bean> adapter; List<Bean> list ; int progress=0; MyAdapter myAdapter ; ProgressDialog progressDialog; public Handler handler = new Handler(){ public void handleMessage(android.os.Message msg) { if(msg.what==0){ myAdapter.notifyDataSetChanged(); } }; }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //查找控件 listview = (ListView) findViewById(R.id.list_view); //打气 View contentView = View.inflate(this, R.layout.jingzhi_layout, null); //添加到底部 listview.addFooterView(contentView); listview.setOnScrollListener(new AbsListView.OnScrollListener() { @Override public void onScrollStateChanged(AbsListView view, int scrollState) { // TODO Auto-generated method stub if(scrollState== AbsListView.OnScrollListener.SCROLL_STATE_IDLE&&listview.getLastVisiblePosition()==list.size()); list.add(new Bean("哈哈", R.mipmap.ic_launcher)); list.add(new Bean("哈哈", R.mipmap.ic_launcher)); list.add(new Bean("66", R.mipmap.ic_launcher)); list.add(new Bean("哈哈", R.mipmap.ic_launcher)); list.add(new Bean("77", R.mipmap.ic_launcher)); list.add(new Bean("哈哈", R.mipmap.ic_launcher)); getData(); } @Override public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) { // TODO Auto-generated method stub } }); //先建list list = new ArrayList<Bean>(); //数据 设置适配器 getData(); listview.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { private AlertDialog.Builder builder; @Override public boolean onItemLongClick(AdapterView<?> parent, View view, final int position, long id) { // TODO Auto-generated method stub builder = new AlertDialog.Builder(MainActivity.this); builder.setIcon(R.mipmap.ic_launcher); builder.setTitle("提示"); builder.setMessage("确认删除吗"); builder.setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub progressDialog = new ProgressDialog(MainActivity.this); progressDialog.setIcon(R.mipmap.ic_launcher); progressDialog.setTitle("警示"); progressDialog.setMessage("正在删除"); progressDialog.setProgressStyle(progressDialog.STYLE_HORIZONTAL); progressDialog.show(); new Thread(){ public void run() { while(true){ if(progress<100){ progress++; progressDialog.setProgress(progress); try { sleep(50); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } }else{ list.remove(position); handler.sendEmptyMessage(0); progressDialog.dismiss(); progress=0; break; } } }; }.start(); } }); builder.setNegativeButton("取消", null); builder.show(); return false; } }); } private void getData() { // TODO Auto-generated method stub list.add(new Bean("哈哈", R.mipmap.ic_launcher)); list.add(new Bean("哈哈", R.mipmap.ic_launcher)); list.add(new Bean("哈哈", R.mipmap.ic_launcher)); list.add(new Bean("哈哈", R.mipmap.ic_launcher)); list.add(new Bean("哈哈", R.mipmap.ic_launcher)); list.add(new Bean("哈哈", R.mipmap.ic_launcher)); if(adapter==null){ myAdapter = new MyAdapter(list,MainActivity.this); listview.setAdapter(myAdapter); }else{ //刷新适配器 adapter.notifyDataSetChanged(); } } }
相关文章: