首页 行业资讯 宠物日常 宠物养护 宠物健康 宠物故事

iphone12屏幕边框宽度

发布网友 发布时间:2022-04-22 04:03

我来回答

1个回答

热心网友 时间:2023-06-25 03:35

Android获取屏幕宽度的4种方法

  方法一:

  WindowManager wm = (WindowManager) this

  .getSystemService(Context.WINDOW_SERVICE);

  int width = wm.getDefaultDisplay().getWidth();

  int height = wm.getDefaultDisplay().getHeight();

  方法二:

  WindowManager wm1 = this.getWindowManager();

  int width1 = wm1.getDefaultDisplay().getWidth();

  int height1 = wm1.getDefaultDisplay().getHeight();

  方法一与方法二获取屏幕宽度的方法类似,只是获取WindowManager 对象时的途径不同。

  方法三:

  WindowManager manager = this.getWindowManager();

  DisplayMetrics outMetrics = new DisplayMetrics();

  manager.getDefaultDisplay().getMetrics(outMetrics);

  int width2 = outMetrics.widthPixels;

  int height2 = outMetrics.heightPixels;

  方法四:

  Resources resources = this.getResources(); DisplayMetrics dm = resources.getDisplayMetrics(); float density1 = dm.density; int width3 = dm.widthPixels; int height3 = dm.heightPixels;

  方法五

  在一个Activity的onCreate方法中,写入如下代码:

  DisplayMetrics metric = new DisplayMetrics();

  getWindowManager().getDefaultDisplay().getMetrics(metric);

  int width = metric.widthPixels; // 屏幕宽度(像素)

  int height = metric.heightPixels; // 屏幕高度(像素)

  float density = metric.density; // 屏幕密度(0.75 / 1.0 / 1.5)

  int densityDpi = metric.densityDpi; // 屏幕密度DPI(120 / 160 / 240)

  AndroidManifest.xml文件中,加入supports-screens节点,具体的内容如下:

  android:smallScreens="true"

  android:normalScreens="true"

  android:largeScreens="true"

  android:resizeable="true"

  android:anyDensity="true" />

  这样的话,当前的Android程序就支持了多种分辨率,那么就可以得到正确的物理尺寸了。

  android获取屏幕分辨率方法

  在实际的项目中,我们经常要得到当前屏幕的分辨率,进行机型适配,得到分辨率其实很简单,主要有两种方法。

  在ACTIVITY的onCreate(Bundle savedInstanceState) 方法中修改。

  方法一:

  Display mDisplay = getWindowManager().getDefaultDisplay();

  int W = mDisplay.getWidth();

  int H = mDisplay.getHeight();

  Log.i("Main", "Width = " + W);

  Log.i("Main", "Height = " + H);

  复制代码

  Display是在android.view.Display包中的。

  方法二:

  DisplayMetrics mDisplayMetrics = new DisplayMetrics();

  getWindowManager().getDefaultDisplay().getMetrics(mDisplayMetrics);

  int W = mDisplayMetrics.widthPixels;

  int H = mDisplayMetrics.heightPixels;

  Log.i("Main", "Width = " + W);

  Log.i("Main", "Height = " + H);

  复制代码

  DisplayMetrics是在android.util.DisplayMetrics包中的,getWindowManager()是Activity中的方法。

  android获取当前时间

  1、long time=System.currentTimeMillis();

  2、final Calendar mCalendar=Calendar.getInstance();

  mCalendar.setTimeInMillis(time);

  取得小时:mHour=mCalendar.get(Calendar.HOUR);

  取得分钟:mMinuts=mCalendar.get(Calendar.MINUTE);

  3、Time t=new Time(); // or Time t=new Time("GMT+8"); 加上Time Zone资料

  t.setToNow(); // 取得系统时间。

  int year = t.year;

  int month = t.month;

  int date = t.monthDay;

  int hour = t.hour; // 0-23

  4、DateFormat df = new SimpleDateFormat("HH:mm:ss");

  df.format(new Date());

  如何获取Android系统时间是24小时制还是12小时制:

  java代码:

  ContentResolver cv = this.getContentResolver();

  String strTimeFormat =android.provider.Settings.System.getString(cv,

  android.provider.Settings.System.TIME_12_24);

  if(strTimeFormat.equals("24"))

  {

  Log.i("activity","24");

  }

  取得系统日期:

  java代码:

  Calendar c = Calendar.getInstance();

  year = c.get(Calendar.YEAR)

  month = c.grt(Calendar.MONTH)

  day = c.get(Calendar.DAY_OF_MONTH)

  取得系统时间:

  java代码:

  Calendar c = Calendar.getInstance();

  hour = c.get(Calendar.HOUR_OF_DAY);

  minute = c.get(Calendar.MINUTE)

  利用Time获取:

  java代码:

  Time t=new Time(); // or Time t=new Time("GMT+8"); 加上TimeZone资料。

  t.setToNow(); // 取得系统时间。

  int year = t.year;

  int month = t.month;

  int date = t.monthDay;

  int hour = t.hour; // 0-23

  int minute = t.minute;

  int second = t.second;

  android获取屏幕尺寸

  // 通过WindowManager获取

  DisplayMetrics dm = new DisplayMetrics();

  getWindowManager().getDefaultDisplay().getMetrics(dm);

  System.out.println("heigth : " + dm.heightPixels);

  System.out.println("width : " + dm.widthPixels);

  // 通过Resources获取

  DisplayMetrics dm2 = getResources().getDisplayMetrics();

  System.out.println("heigth2 : " + dm2.heightPixels);

  System.out.println("width2 : " + dm2.widthPixels);

  // 获取屏幕的默认分辨率

  Display display = getWindowManager().getDefaultDisplay();

  System.out.println("width-display :" + display.getWidth());

  System.out.println("heigth-display :" + display.getHeight());

  但是,需要注意的是,在一个低密度的小屏手机上,仅靠上面的代码是不能获取正确的尺寸的。比如说,一部240x320像素的低密度手机,如果运行上述代码,获取到的屏幕尺寸是320x427。因此,研究之后发现,若没有设定多分辨率支持的话,Android系统会将240x320的低密度(120)尺寸转换为中等密度(160)对应的尺寸,这样的话就大大影响了程序的编码。所以,需要在工程的AndroidManifest.xml文件中,加入supports-screens节点,具体的内容如下:

  android:smallScreens="true"

  android:normalScreens="true"

  android:largeScreens="true"

  android:resizeable="true"

  android:anyDensity="true" />

  这样的话,当前的Android程序就支持了多种分辨率,那么就可以得到正确的物理尺寸了。

  android获取屏幕宽度与分辨率方法如上,其实设计android获取屏幕高度或其他的功能时,也可以采用相应的代码完成的。android的软件都是由各种各样的代码组合而成的,一个代码的字母或数字错了,都可能会影响到最终的效果或是导致软件设计失败的,为此在编写代码的时候要打醒十二分精神,保证编写出来的代码准确而有用。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com