Android第三方開源庫:PopupWindow相關
阿新 • • 發佈:2019-01-10
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>