android怎么在dialog嵌套listview

android怎么在dialog嵌套listview,第1张

这个很简单,在dialog有个方法dialog.setview(...), 这是自己设置布局进去,你写个布局,里面有listview的,直接填充进去,我举个例子吧:

dialog.builder builder = ......

View view = Layoutinflater.inflater(r.layout.... ,null) (第一个参数是布局)

Listview lv = view.findv....

builder.settitle(...)

builder.setmessage(...)

builder.setview(view)

builder.create().show

大功告成。~

如果是一个自定义的复杂一点的ListView,在button的onClickListener中重新加载包含ListView的xml就行(或者把原定义的listView变成visible)。

如果是一个简单的dropdown list,用Snipper就好。

这个用自定义dialog实现

dialog 的控件,用你自己的布局, listView要使用自定义Adapter Window window = dialog.getWindow()

window.setGravity(Gravity.BOTTOM) //此处可以设置dialog显示的位置

window.setWindowAnimations(R.style.mystyle) //添加动画

styles.xml

<?xml version="1.0" encoding="utf-8"?>

<resources>

<style name="mystyle" parent="android:Animation">

<item name="@android:windowEnterAnimation">@anim/dialog_enter</item> //进入时的动画

<item name="@android:windowExitAnimation">@anim/dialog_exit</item> //退出时的动画

</style>

</resources>

位于 res/anim/dialog_enter.xml

<?xml version="1.0" encoding="utf-8"?>

<set xmlns:android="http://schemas.android.com/apk/res/android">

<translate

android:fromYDelta="100%p" %p指相对于父容器

android:duration="600"

/>

</set>

位于 res/anim/dialog_exit.xml

<?xml version="1.0" encoding="utf-8"?>

<set xmlns:android="http://schemas.android.com/apk/res/android">

<translate

android:toYDelta="100%p"

android:duration="600"//持续时间

/>

</set>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11798828.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存