您现在的位置是:主页 > news > 深圳知名网站建设价格/网站如何进行优化

深圳知名网站建设价格/网站如何进行优化

admin2025/5/15 17:51:18news

简介深圳知名网站建设价格,网站如何进行优化,天津代办营业执照的正规公司,政府网站内容建设首先我们看一下新浪微博的效果(其它就是一个dialog): 点击title前 点击title后 实现方式: 首先我们要自定义一个dialog 代码如下: /**** 自定义dialog* * author jia* */ public class MyDialog extends Dialog {private Window window nul…

深圳知名网站建设价格,网站如何进行优化,天津代办营业执照的正规公司,政府网站内容建设首先我们看一下新浪微博的效果(其它就是一个dialog): 点击title前 点击title后 实现方式: 首先我们要自定义一个dialog 代码如下: /**** 自定义dialog* * author jia* */ public class MyDialog extends Dialog {private Window window nul…

首先我们看一下新浪微博的效果(其它就是一个dialog):

点击title前 点击title后

实现方式:

首先我们要自定义一个dialog

代码如下:

/**** 自定义dialog* * @author jia* */
public class MyDialog extends Dialog {private Window window = null;/**** * @param context* @param layoutResID*            配置文件* @param x*            显示的x坐标* @param y*            显示的y坐标* @param title*            集合*/public MyDialog(final Context context, int layoutResID, int x, int y,final String[] title) {super(context, R.style.Transparent);window = this.getWindow();window.requestFeature(Window.FEATURE_NO_TITLE);setContentView(layoutResID);int width = this.getWindow().getWindowManager().getDefaultDisplay().getWidth();windowDeploy(width / 2, 300, x, y);show();}/**** 设置窗口显示* * @param x* @param y* @param dialog_x* @param dialog_y*/public void windowDeploy(int dialog_width, int dialog_height, int dialog_x,int dialog_y) {window.setBackgroundDrawableResource(android.R.color.transparent); // 设置对话框背景为透明WindowManager.LayoutParams wl = window.getAttributes();wl.width = dialog_width;wl.height = dialog_height;// wl.alpha = 0.8f;wl.gravity = Gravity.LEFT | Gravity.TOP; // 不设置的话默认是居中wl.x = dialog_x - dialog_width / 2; // 要显示的位置x坐标wl.y = dialog_y;window.setAttributes(wl);window.setWindowAnimations(R.style.dialogWindowAnim); // 设置窗口弹出动画setCanceledOnTouchOutside(true);}}

我们只需要在activity中调用即可:

代码片段:

textView.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {int x_begin = textView.getLeft();int x_end = textView.getRight();int y_begin = textView.getTop();int y_end = textView.getBottom();// 这个是要显示位置的纵坐标// 获取最中间的x坐标int x = (x_begin + x_end) / 2;// 这个值也就是屏幕最中间的值,也可以下面这样// int x=getWindowManager().getDefaultDisplay().getWidth()/2;// int[] location = new int[2];// textView.getLocationInWindow(location); // 获取在当前窗口内的绝对坐标// textView.getLocationOnScreen(location);// 获取在整个屏幕内的绝对坐标myDialog = new MyDialog(DialogDemoActivity.this,R.layout.dialog, x, y_end, title);View view = LayoutInflater.from(DialogDemoActivity.this).inflate(R.layout.dialog, null);listView = (ListView) myDialog.getWindow().findViewById(R.id.lv_dialog);listView.setAdapter(new ArrayAdapter<String>(DialogDemoActivity.this, R.layout.text, R.id.tv_text,title));listView.setOnItemClickListener(new OnItemClickListener() {@Overridepublic void onItemClick(AdapterView<?> arg0, View arg1,int arg2, long arg3) {textView.setText(title[arg2]);myDialog.cancel();myDialog = null;}});}});
实现效果如下:

点击前 点击后 选择 选择后


实现起来也不难,有点要说明一下,这里我们用到了.9.png图片,这个图片会自动根据需要伸展,(重要的是不失真,这点很棒吧,详细介绍请点击连接).

源码下载