Android开发中PopupWindow用法实例分析
本文实例分析了Android开发中PopupWindow用法。分享给大家供大家参考,具体如下:
privateTextViewtv_appmanager_title;
privateListViewlv_app_manager;
privateLinearLayoutll_appmanager_loading;
privateAppManagerProviderprovider;
privateList<AppManagerInfo>infos;
privateAppManagerAdapteradapter;
privatePopupWindowlocalPopupWindow;
privateHandlerhandler=newHandler(){
publicvoidhandleMessage(android.os.Messagemsg){
switch(msg.what){
caseConstants.MSG_APP_MANAGER:
ll_appmanager_loading.setVisibility(View.INVISIBLE);
adapter=newAppManagerAdapter(infos,AppManagerActivity.this);
lv_app_manager.setAdapter(adapter);
break;
}
};
};
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.appmanager);
lv_app_manager=(ListView)this.findViewById(R.id.lv_app_manager);
ll_appmanager_loading=(LinearLayout)this.findViewById(R.id.ll_appmanager_loading);
ll_appmanager_loading.setVisibility(View.VISIBLE);
newThread(){
publicvoidrun(){
provider=newAppManagerProvider(AppManagerActivity.this);
infos=provider.getAppManagerInfo();
Messagemsg=newMessage();
msg.what=Constants.MSG_APP_MANAGER;
handler.sendMessage(msg);
};
}.start();
lv_app_manager.setOnItemClickListener(newOnItemClickListener(){
@Override
publicvoidonItemClick(AdapterView<?>parent,Viewview,
intposition,longid){
if(null!=localPopupWindow){
localPopupWindow.dismiss();
localPopupWindow=null;
}
int[]location=newint[2];
view.getLocationInWindow(location);
intx=location[0]+60;
inty=location[1];
TextViewtv=newTextView(AppManagerActivity.this);
AppManagerInfoinfo=(AppManagerInfo)lv_app_manager.getItemAtPosition(position);
tv.setText(info.getPackName());
tv.setTextSize(20);
tv.setTextColor(Color.RED);
localPopupWindow=newPopupWindow(tv,LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
Drawablebackground=newColorDrawable(Color.GRAY);
localPopupWindow.setBackgroundDrawable(background);
localPopupWindow.showAtLocation(tv,51,x,y);
}
});
lv_app_manager.setOnScrollListener(newOnScrollListener(){
@Override
publicvoidonScrollStateChanged(AbsListViewview,intscrollState){
if(null!=localPopupWindow){
localPopupWindow.dismiss();
localPopupWindow=null;
}
}
@Override
publicvoidonScroll(AbsListViewview,intfirstVisibleItem,
intvisibleItemCount,inttotalItemCount){
if(null!=localPopupWindow){
localPopupWindow.dismiss();
localPopupWindow=null;
}
}
});
}
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》、《Android通信方式总结》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。
热门推荐
10 诗词送行祝福语大全简短
11 新房开工吉日祝福语简短
12 50多岁生日简短祝福语
13 安徽疫情祝福语简短英语
14 农民朋友发财祝福语简短
15 对生活祝福语简短精辟
16 搬家词简短祝福语朋友
17 女神结婚快乐祝福语简短
18 文学短句祝福语大全简短