/// <summary> /// Set screen density for ImageUtils. According density parameters /// are all images resized for message list. /// </summary> /// <param name="density"></param> public void SetScreenDensity(DisplayMetricsDensity density) { switch (density) { case DisplayMetricsDensity.Low: _previewWidth = SCALED_MESSAGE_PREVIEW_IMAGE_WIDTH_LDPI; _previewHeight = SCALED_MESSAGE_PREVIEW_IMAGE_HEIGHT_LDPI; break; case DisplayMetricsDensity.Medium: _previewWidth = SCALED_MESSAGE_PREVIEW_IMAGE_WIDTH_MDPI; _previewHeight = SCALED_MESSAGE_PREVIEW_IMAGE_HEIGHT_MDPI; break; case DisplayMetricsDensity.High: _previewWidth = SCALED_MESSAGE_PREVIEW_IMAGE_WIDTH_HDPI; _previewHeight = SCALED_MESSAGE_PREVIEW_IMAGE_HEIGHT_HDPI; break; case DisplayMetricsDensity.Xhigh: _previewWidth = SCALED_MESSAGE_PREVIEW_IMAGE_WIDTH_XHDPI; _previewHeight = SCALED_MESSAGE_PREVIEW_IMAGE_HEIGHT_XHDPI; break; default: _previewWidth = SCALED_MESSAGE_PREVIEW_IMAGE_WIDTH_MDPI; _previewHeight = SCALED_MESSAGE_PREVIEW_IMAGE_HEIGHT_MDPI; break; } }
protected override void OnCreate(Bundle savedInstanceState) { TabLayoutResource = Resource.Layout.Tabbar; ToolbarResource = Resource.Layout.Toolbar; base.OnCreate(savedInstanceState); global::Xamarin.Forms.Forms.Init(this, savedInstanceState); App app = new App(); DisplayMetrics dm = new DisplayMetrics(); WindowManager.DefaultDisplay.GetMetrics(dm); int _width = dm.WidthPixels; //分辨率宽度 int _height = dm.HeightPixels; //分辨率高度 float _density = dm.Density; ////屏幕密度(像素比例0.75、1.0、1.5、2.0) DisplayMetricsDensity _densityDPI = dm.DensityDpi; //屏幕密度(每寸像素120、160、240、320) _width = WindowManager.DefaultDisplay.Width; _height = WindowManager.DefaultDisplay.Height; App.WidthPixels = _width; App.HeightPixels = _height; App.DPI = Convert.ToInt32(_densityDPI); App.Density = _density; LoadApplication(app); }
protected override void OnElementPropertyChanged(object sender, PropertyChangedEventArgs e) { base.OnElementPropertyChanged(sender, e); activity = Context as Activity; dpi = Resources.DisplayMetrics.DensityDpi; if (e.PropertyName == "Title") { activity.ActionBar.Title = Element.Title; activity.ActionBar.SetDisplayHomeAsUpEnabled(false); SetupTabs(activity.ActionBar); } }
//readonly DateTime Jan1st1970 = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc); //long CurrentTimeMillis() //{ // return (long)(DateTime.UtcNow - Jan1st1970).TotalMilliseconds; //} public ScreenRecorder() { mainActivity = (Forms.Context as Activity); //服务第一次创建进行初始化 mediaProjectionManager = (MediaProjectionManager)Forms.Context.GetSystemService(Context.MediaProjectionService); mediaRecorder = new MediaRecorder(); DisplayMetrics metrics = new DisplayMetrics(); mainActivity.WindowManager.DefaultDisplay.GetMetrics(metrics); screenDensity = metrics.DensityDpi; }
protected override void OnElementPropertyChanged(object sender, PropertyChangedEventArgs e) { base.OnElementPropertyChanged(sender, e); activity = Context as Activity; dpi = Resources.DisplayMetrics.DensityDpi; if (e.PropertyName == "Title") { activity.ActionBar.Title = Element.Title; activity.ActionBar.SetDisplayHomeAsUpEnabled(false); SetupTabs(activity.ActionBar); } }
private static extern void RenderPage(IntPtr env, IntPtr thiz, IntPtr pagePtr, Surface surface, DisplayMetricsDensity dpi, int startX, int startY, int drawSizeHor, int drawSizeVer, bool renderAnnot);
private static extern int GetPageHeightPixel(IntPtr env, IntPtr thiz, IntPtr pagePtr, DisplayMetricsDensity dpi);
public PdfiumCore(Context ctx) { mCurrentDpi = ctx.Resources.DisplayMetrics.DensityDpi; }