android的artdialog的用法

来源:互联网 发布:java上传和下载文件 编辑:程序博客网 时间:2024/06/07 09:36
做了个小程序,最后没有用上,但用法是完全体现出来了:
我定义了几个按钮的,代码很清晰,没有必要赘述了。
protected void initFilterbar(){
id_cat=(Button)findViewById(R.id.id_cat);
id_year=(Button)findViewById(R.id.id_year);
id_order=(Button)findViewById(R.id.id_order);
id_cat.setOnClickListener(filter_click);
id_year.setOnClickListener(filter_click);
id_order.setOnClickListener(filter_click);
}
protected View.OnClickListener filter_click=newView.OnClickListener() {
@Override
public void onClick(View v) {
switch(v.getId())
{
case R.id.id_cat:{
showDialogPopup(R.id.id_cat);
break;
}
case R.id.id_year:{
showDialogPopup(R.id.id_year);
break;
}
case R.id.id_order:{
showDialogPopup(R.id.id_cat);
break;
}
}
}
};
protected void showDialogPopup(int viewId)
{
AlertDialog.Builder localBuilder = newAlertDialog.Builder(this);
switch(viewId)
{
case R.id.id_cat:{
//设置adpter
if(catadpter == null){
catadpter = new CatAdapter(this);
}
localBuilder.setAdapter(catadpter, newflPopupListener(catadpter)); 
break;
}
case R.id.id_year:{
break;
}
case R.id.id_order:{
break;
}
}
AlertDialog localAlertDialog = localBuilder.create();
localAlertDialog.show();
}
class flPopupListener implementsDialogInterface.OnClickListener{
CatAdapter catadpter;
public flPopupListener(ListAdapter catadpter)
{
catadpter = (CatAdapter)catadpter;
}
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
}
}
CatAdapter.java
package com.qvod.view;

import java.util.ArrayList;

import com.qvod.baidumovie.R;
import com.qvod.model.CatList;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;

public class CatAdapter extends BaseAdapter {
private LayoutInflater mInflater;
private ArrayList mData;
private Context context;
public CatAdapter(Context context) {
this.context = context;
this.mInflater = LayoutInflater.from(context);
mData = getData();
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return mData.size();
}

@Override
public CatList getItem(int position) {
// TODO Auto-generated method stub
return mData.get(position);
}

@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}

@Override
public View getView(int position, View convertView, ViewGroupparent) {
final ViewHolder holder;
if(convertView == null){
convertView = mInflater.inflate(R.layout.dialog_list_item,null);
holder = new ViewHolder();
holder.vod_catid = (TextView)convertView.findViewById(R.id.catid);
holder.vod_catname = (TextView)convertView.findViewById(R.id.catname);
convertView.setTag(holder);
} else {
holder = (ViewHolder)convertView.getTag();
}
CatList locmap = (CatList)mData.get(position);
holder.vod_catid.setText(locmap.getCatid());
holder.vod_catname.setText(locmap.getCatname());
return convertView;
}
private ArrayList getData()
{
ArrayList data = new ArrayList();
ArrayList dsid=new ArrayList();
ArrayList dsname=new ArrayList();
ArrayList dyid=new ArrayList();
ArrayList dyname=new ArrayList();
dsid.add("1");
dsid.add("2");
dsid.add("3");
dsid.add("4");
dsid.add("5");
dsid.add("6");
dsname.add("内地");
dsname.add("韩剧");
dsname.add("港剧");
dsname.add("台剧");
dsname.add("美剧");
dsname.add("日剧");
//电影的ID
dyid.add("1");
dyid.add("2");
dyid.add("3");
dyid.add("4");
dyid.add("5");
dyid.add("6");
dyid.add("7");
dyid.add("8");
dyname.add("动作");
dyname.add("剧情");
dyname.add("喜剧");
dyname.add("爱情");
dyname.add("恐怖");
dyname.add("科幻");
dyname.add("战争");
dyname.add("记录");
for(int i=0;i
CatList ed=new CatList();
ed.setCatid(dsid.get(i));
ed.setCatname(dsname.get(i));
data.add(ed);
}
return data;
}
class ViewHolder{
TextView vod_catid;
TextView vod_catname;
}
}

原创粉丝点击