Android Material Design:ListPopupWindow


Android Material Design引入的ListPopupWindow,首先是一个PopupWindow,不过此PopupWindow内嵌一个List,给予此List设置一个Adapter,就相当Android为开发者做好了一个内置ListView的PopupWindows。

如图所示:


给出上述效果的代码实现:

package zhangphil.materialdesign;import android.app.Activity;import android.os.Bundle;import android.support.v7.widget.ListPopupWindow;import android.view.View;import android.widget.AdapterView;import android.widget.ArrayAdapter;import android.widget.Button;import android.widget.Toast;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);final Button button = (Button) findViewById(R.id.button);button.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {showListPopupWindow(button);}});}public void showListPopupWindow(View view) {String items[] = { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" };ListPopupWindow listPopupWindow = new ListPopupWindow(this);// ListView适配器listPopupWindow.setAdapter(new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_list_item_1, items));// 选择item的监听事件listPopupWindow.setOnItemClickListener(new AdapterView.OnItemClickListener() {@Overridepublic void onItemClick(AdapterView<?> parent, View view, int pos, long id) {Toast.makeText(getApplicationContext(), "选择:" + pos, Toast.LENGTH_SHORT).show();// listPopupWindow.dismiss();}});// 对话框的宽高listPopupWindow.setWidth(500);listPopupWindow.setHeight(600);// ListPopupWindow的锚,弹出框的位置是相对当前View的位置listPopupWindow.setAnchorView(view);// ListPopupWindow 距锚view的距离listPopupWindow.setHorizontalOffset(50);listPopupWindow.setVerticalOffset(100);listPopupWindow.setModal(false);listPopupWindow.show();}}

activity_main.xml只是一个仅仅含有一个Button的布局,Button用于触发、弹出ListPopupWindow,不在此赘述。

更多相关文章

  1. Android中ExpandableListView的使用
  2. android中列表选项、单选选项、多选选项对话框的使用
  3. Android(安卓)​自定义RadioButton或CheckBox选择样式
  4. Android的EditText的光标选择问题
  5. 在Android中使用HTML5本地存储,地理位置,离线应用
  6. Android(安卓)LBS系列04 位置和地图服务简介
  7. Android开发学习 之 一、开发环境的搭建
  8. android背景选择器selector用法汇总
  9. android 超简单的拖动按钮 悬浮按钮 吸附按钮

随机推荐

  1. AOSP ON MAKO(在NEXUS 4上刷ANDROID 4.4
  2. 下载Android(安卓)源码
  3. Android(安卓)常见问题之 android.conten
  4. 关于ANDROID下载与音乐播放
  5. 关于Android(安卓)traslateAnimation的坐
  6. ubuntu 10.10 编译Android2.2问题解决
  7. Android面试复习资料整理
  8. 定制个性化屏保
  9. 【Android】android的基本UI操作(2)以及小
  10. Android(安卓)RecyclerView最全使用详解