获取页面适配器内的屏幕尺寸?

lis*_*aro 2 java android screen

我正在尝试在页面适配器中获取屏幕尺寸.我可以把它放进去MainActivity并将它传递给适配器,但最好还是把它拿到那里.我怎么能直接在适配器内部或内部instantiateItem

这是我的代码:

public class MyPagerAdapter extends PagerAdapter {
    Display display = getWindowManager().getDefaultDisplay(); // The method getWindowManager() is undefined for the type MyPagerAdapter
    display.getSize(size);
    ...
    }
Run Code Online (Sandbox Code Playgroud)

Ola*_*che 11

你快到了.你已经有了context.有了这个,你可以检索一个过WindowManagergetSystemService(WINDOW_SERVICE)

WindowManager wm = (WindowManager)context.getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
Run Code Online (Sandbox Code Playgroud)


syk*_*lon 6

从任何上下文引用(例如在您的intantiateItem)中,您可以DisplayMetrics通过执行来获取对类的引用

context.getResources().getDisplayMetrics()

这为您提供了DisplayMetricsDisplayMetrics类的参考

特别是使用你的将是widthPixelsheightPixels这个属性,返回原始像素的高度和宽度的设备.