編輯:關於Android編程
上一節,已經完成了來電管家的界面設計,那麼下面就要實現具體的功能了,如何將添加的黑白名單顯示呢?這裡用到了ListView,那麼,如果需要刪除黑白名單呢,是一個個長按彈出菜單刪除,還是將所的黑白名單清空呢,這都不符合用戶的需求,往往,都是刪除多個,這就有個問題了,如何在ListView中刪除指定的多個item呢??可能大家想到了,要用到CheckBox。
先看圖:


可以看出,當處於刪除模式時,底部按鈕也變成了刪除與返回,中間也顯示了當前共選擇了多少項,而且在ListView的每一個Item右邊也顯示出了CheckBox,用於多選。
這一節,只實現如何顯示,並且為ListView添加監聽器,下節再實現的黑白名單的增加與刪除。
黑白名單的布局文件上一節已給出,還有listView中的item的布局文件list_item.xml,用到了控件的隱藏與顯示,效果如上圖所示:
list_item.xml
既然用到了ListView,必然要有Adapter,這裡依然采用的是BaseAdapter,主要代碼如下:
class Adapter extends BaseAdapter{
private Context context;
private LayoutInflater inflater=null;
private HashMap mView ;
public HashMap visiblecheck ;//用來記錄是否顯示checkBox
public HashMap ischeck;
private TextView txtcount;
public Adapter(Context context,TextView txtcount)
{
this.context = context;
this.txtcount = txtcount;
inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
mView = new HashMap();
visiblecheck = new HashMap();
ischeck = new HashMap();
if(isMulChoice){
for(int i=0;i
其中的Onlongclick是給ListView的item添加長按監聽器,實現彈出CheckBox,及底部刪除按鈕的功能。這裡面用到了控件的隱藏與顯示,剩下的就是控件的聲明與定義。並為ListView綁定監聽器。
private List array = new ArrayList();
private List selectid = new ArrayList();
private ListView lv_show;
private CheckBox cb;
private TextView tv_count;
private RelativeLayout add_layout;
private RelativeLayout delete_layout;
private Adapter adapter;
其中Person是自定義的類:
Person.java
public class Person {
String name;
String number;
int id;
public Person(int id,String name,String number) {
this.id = id;
this.name = name;
this.number = number;
}
}
tv_count = (TextView)findViewById(R.id.tv_select);
add_layout = (RelativeLayout)findViewById(R.id.add_layout);
delete_layout = (RelativeLayout)findViewById(R.id.delete_layout);
lv_show = (ListView)findViewById(R.id.lv_show);
這裡只是主要的代碼,完整的代碼我會打包上傳的。
微信沒有聲音提示怎麼辦 微信沒有聲音是怎麼回事
比如對方發的語音消息聽不到/沒聲音。這可是十分突出的一個問題,那麼該如何解決呢?微信沒有聲音是怎麼回事?微信沒有聲音提示怎麼辦呢?微信沒有聲音怎麼辦?一起看
Android仿騰訊QQ實現滑動刪除 附源碼下載
看了很多大神們的文章,感覺受益良多,也非常欣賞大家的分享態度,所以決定開始寫Blog,給大家分享自己的心得。先看看效果圖:本來准備在ListView的每個Item的布局上
Android填坑系列:在小米系列等機型上放開定位權限後的定位請求彈框示例
背景近期因實際項目需要,在特定操作下觸發定位請求,取到用戶位置及附近位置。問題:經初步選型,最終決定接入百度定位,按照百度定位SDK Android文檔,接入過程相對順利
Windows下Android開發環境搭建和配置圖解教程
關於Windows下Android開發環境搭建、配置方面文章,網上一搜一堆,為方便以後參考,權且做個記錄,主要關注安裝過程中的注意事項。對新手提醒的是,本文