6.3 popub窗体 popubWindow
来源:互联网 发布:美橙互联怎么解析域名 编辑:程序博客网 时间:2024/05/19 20:19
1. 在适配器中的getItem方法中, 得到条目对应的view对象, 将结果返回给item的点击事件
2.给listview的item设置点击事件的监听
3.得到适配器中getItem方法返回的点击listItem对应的对象
4. 创建 popub窗体
5. 给popub窗体设置透明背景 注:如果 popub没有背景则设置不了动画效果
6.show出popubWindow
7.在activity销毁时,dismiss掉popubWindow
/**
* 1. 得到条目对应的view对象,结果返回给item的点击事件
*/
@Override
public Object getItem( int position) {
//初始化化控件
if(position==0){
return null;
} else if(position==( userAppList.size()+1)){
return null;
} else if(position<= userAppList.size()){ //从集合中得到用户应用
int newPosition=position-1;
appInfoBean= userAppList.get(newPosition);
} else{
int newPosition=position-1- userAppList.size()-1;
appInfoBean= sysAppList.get(newPosition);
}
return appInfoBean;
}
@Override
public long getItemId( int position) {
return 0;
}
}
//3.得到适配器中getItem方法返回的点击listItem对应的对象
Object obj=lv_app_manage.getItemAtPosition(position);
if(obj!= null&& obj instanceof AppInfoBean){
clickAppInfo=(AppInfoBean) obj; //被点击item对应的对象
if( popubWindow!= null&& popubWindow.isShowing()){ //再次点击时关闭已经存在的popubWindow
popubWindow.dismiss();
popubWindow= null;
}
View contentView=View.inflate(getApplicationContext(), R.layout. pop_app_item, null) ;
//4. 创建popub 窗体 contentView:填充的布局 -2,-2: 包裹内容
popubWindow= new PopupWindow(contentView, -2, -2);
//5. 给popub 窗体设置透明背景 注:如果popub没有背景则设置不了动画效果
popubWindow.setBackgroundDrawable( new ColorDrawable(Color.TRANSPARENT ));
int[] locations= new int [2];
view.getLocationInWindow(locations); //得到view对象在activity窗体上的位置的参数x,y
//6.show出popubWindow 1. popub所在的窗体 2.对其方式 3.距离activity窗体左边框的距离 4.距离activity窗体上边框的距离
popubWindow.showAtLocation(parent, Gravity.LEFT+Gravity.TOP , 65, locations[1]);
//给popubWindow设置动画展示效果
ScaleAnimation scale= new ScaleAnimation(0.5f, 1.2f, 0.5f, 1.2f);
scale.setDuration(300);
contentView.startAnimation(scale);
}
}
/*
* 7.在activity销毁时关闭popubWindow
*/
@Override
protected void onDestroy() {
if(popubWindow !=null){
popubWindow.dismiss();
popubWindow= null;
}
super.onDestroy();
}
/*
* 7.在activity销毁时关闭popubWindow
*/
@Override
protected void onDestroy() {
if(popubWindow !=null){
popubWindow.dismiss();
popubWindow= null;
}
super.onDestroy();
}
- 6.3 popub窗体 popubWindow
- 窗体
- 窗体
- 窗体
- 窗体
- 窗体
- 窗体
- 窗体
- 窗体
- 窗体
- 子窗体传值到父窗体
- 子窗体传值到父窗体
- 【C#】[窗体]不规则窗体
- 【C#】[窗体]窗体渐显
- 【C#】[窗体]字型窗体
- 子窗体、父窗体
- 网摘》窗体、子窗体
- 子窗体传值到父窗体
- 6.2 复杂的listView展现
- 移动短信网关接入必须的几个参数
- vim插件配置模板
- 树状数组(好)-poj1990
- OCP-1Z0-053-V12.02-629题
- 6.3 popub窗体 popubWindow
- OCP-1Z0-053-V12.02-658题
- 纯虚函数、虚函数和非虚函数
- [设计模式]策略模式
- Uva-10142-Australian Voting
- library sort (图书馆排序)
- java之回调函数
- 国内搞机器学习和数据挖掘的大牛
- IP源路由原理和作用