ListPopupWindow

 

宽度一般是控件的宽度: mListPopupWindow.setAnchorView(compoundButton);

1
2
3
4
5
6
7
8
9
10
11
check_down.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
          @Override
          public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
              mListPopupWindow.setAnchorView(compoundButton);
              if(b) {
                  mListPopupWindow.show();
              }else{
                  mListPopupWindow.dismiss();
              }
          }
      });

  

 

1
2
3
4
5
6
7
8
9
10
11
private void initDialog(){
       final String itmes[]={"第一个子项","第二个子项","第三个子项"};
       mListPopupWindow=new ListPopupWindow(getActivity());
       mListPopupWindow.setAdapter(new ArrayAdapter<String>(getActivity(),R.layout.print_pop_item, itmes));
       mListPopupWindow.setOnItemClickListener(new OnItemClickListener() {
           @Override
           public void onItemClick(AdapterView<?> arg0, View arg1, int position, long arg3) {
               Toast.makeText(getActivity(), "点击了"+itmes[position], Toast.LENGTH_SHORT).show();
           }
       });
   }

  

 

print_pop_item.xml

1
2
3
4
5
6
7
<?xml version="1.0" encoding="utf-8"?>
    <TextView
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/btn"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        />

  

posted @   a318013800  阅读(85)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
历史上的今天:
2018-09-08 Android自定义DialogAAAAA
点击右上角即可分享
微信分享提示