Android自定义样式对话框Dialog

WindowManager wm = (WindowManager) mContext.getSystemService(Context.WINDOW_SERVICE);
int width = wm.getDefaultDisplay().getWidth();
int height = wm.getDefaultDisplay().getHeight();

final AlertDialog ab = new AlertDialog.Builder(mContext).create();
ab.show();//必须在getWindow()之前
Window window = ab.getWindow();
window.setContentView(R.layout.dialog_select_time_period);
WindowManager.LayoutParams lp = window.getAttributes();
//lp.y=800;
window.setLayout((int) (width*0.8),(int) (height*0.8));//WindowManager.LayoutParams.WRAP_CONTENT
window.setGravity(Gravity.CENTER);
window.setAttributes(lp);

lv_time = (ListView) window.findViewById(R.id.lv_time);

mAdapter = new SelectTimePeriodAdapter(mContext,times,tvOrderDatetime.getText().toString());
lv_time.setAdapter(mAdapter);
lv_time.setSelection(DateUtil.getCurrentHour());   
mAdapter.notifyDataSetChanged();

lv_time.setOnItemClickListener(new OnItemClickListener() {

    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id)
    {
        Time time = times.get(position);
        int[] pos = mAdapter.getPosition();
        for (int i = 0; i < pos.length; i++)
        {
            if (position==pos[position]||time.getExpectNum()==time.getBuslimit())
            {
                return;
            }else {
                //String period = getArr()[position];
                tv_period.setText(time.getExpectTimeStr());
                ab.dismiss();
            }
        }
发布了40 篇原创文章 · 获赞 37 · 访问量 9万+

猜你喜欢

转载自blog.csdn.net/sanyang730/article/details/51282166