Android獲得螢幕解析度的兩種方法
阿新 • • 發佈:2019-02-07
package com.wufen.allapp; import android.os.Bundle; import android.app.Activity; import android.content.Intent; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; import android.util.DisplayMetrics; import android.view.Display; import android.view.Menu; import android.view.WindowManager; import android.widget.TextView; import java.util.List; public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final PackageManager packageManager = this.getPackageManager(); final Intent mainIntent = new Intent(Intent.ACTION_MAIN, null); mainIntent.addCategory(Intent.CATEGORY_LAUNCHER); // mainIntent.setPackage(packageName); final List<ResolveInfo> apps = packageManager.queryIntentActivities(mainIntent, 0); // 方法1 Android獲得螢幕的寬和高 WindowManager windowManager = getWindowManager(); Display display = windowManager.getDefaultDisplay(); int screenWidth = screenWidth = display.getWidth(); int screenHeight = screenHeight = display.getHeight(); // 方法2 DisplayMetrics dm = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); TextView tv = (TextView)this.findViewById(R.id.tv); float width=dm.widthPixels*dm.density; float height=dm.heightPixels*dm.density; tv.setText("First method:"+dm.toString()+"\n"+"Second method:"+"Y="+screenWidth+";X="+screenHeight); //dm.widthPixels,dm.heightPixels } }