1. 程式人生 > >Android第三方開源庫:PopupWindow相關

Android第三方開源庫:PopupWindow相關

MultiSelectPopWindow

效果圖

這裡寫圖片描述

gradle

allprojects {
    repositories {
        jcenter()
        maven { url 'https://jitpack.io' }
    }
}

dependencies {
    ...
    compile 'com.github.Jay-Goo:MultiSelectPopWindow:v1.0.1'
}

使用

new MultiSelectPopWindow.Builder(MainActivity.this)
    .setTitle
("班級列表1") .setConfirm("確定") .setCancel("取消") .setNameArray(list2) .setCancelListener(new View.OnClickListener() { @Override public void onClick(View v) { } }) .setConfirmListener(new MultiSelectPopWindow.OnConfirmClickListener() { @Override public void onClick(ArrayList<Integer> indexList, ArrayList<String> selectedList) { Log.d
(TAG, indexList.size() + "," + selectedList.size()); for (int i = 0; i < indexList.size(); i++) { Log.d(TAG, indexList.get(i) + "_" + selectedList.get(i)); } } }) .build() .show(findViewById(R.id.bottom));

注意:MultiSelectPopWindow必須在某個控制元件的上方,也就是必須

.show(findViewById(R.id.bottom));

見佈局activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context="com.cqc.mulitiseletpopupwindow01.MainActivity">

    <Button
        android:id="@+id/btn1"
        android:text="開啟PopupWindow"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>


    <Space
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"/>
    <View
        android:id="@+id/bottom"
        android:layout_width="match_parent"
        android:layout_height="1dp"/>
</LinearLayout>