android– 我应该使用什么代替getWidth()和getHeight()来知道宽度何时更大以及何时高度更大

android– 我应该使用什么代替getWidth()和getHeight()来知道宽度何时更大以及何时高度更大,第1张

概述参见英文答案>Getscreendimensionsinpixels                                    39个importandroid.app.Fragment;importandroid.app.FragmentManager;importandroid.app.FragmentTransaction;importandroid.support.v7.app.Ap

参见英文答案 > Get screen dimensions in pixels                                    39个

import androID.app.Fragment;import androID.app.FragmentManager;import androID.app.FragmentTransaction;import androID.support.v7.app.AppCompatActivity;import androID.os.Bundle;import androID.vIEw.display;import androID.vIEw.WindowManager;public class MainActivity extends AppCompatActivity {    @OverrIDe    protected voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentVIEw(R.layout.activity_main);        FragmentManager fm=getFragmentManager();        FragmentTransaction ft= fm.beginTransaction();        WindowManager wm= getwindowManager();        display d=wm.getDefaultdisplay();        if (d.getWIDth()>d.getHeight())        {            Fragment1 f1 = new Fragment1();            ft.replace(androID.R.ID.content, f1);        }        else        {            Fragment2 f2 = new Fragment2();            ft.replace(androID.R.ID.content, f2);        }    ft.commit();    }}

我想在androID中使用片段,并且当显示的宽度大于显示的高度时想要显示fragment1,当显示的高度大于显示的宽度时,想要显示fragment2但是当使用getWIDth()和getHeight()时,androID studio会说这些方法都被贬低了.
那么如何知道宽度何时更大以及何时高度更大?

解决方法:

使用displayMetrics而不是display.

试试这个:

import androID.app.Fragment;import androID.app.FragmentManager;import androID.app.FragmentTransaction;import androID.support.v7.app.AppCompatActivity;import androID.os.Bundle;import androID.vIEw.display;import androID.vIEw.WindowManager;import androID.util.displayMetrics;public class MainActivity extends AppCompatActivity {    @OverrIDe    protected voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentVIEw(R.layout.activity_main);        FragmentManager fm=getFragmentManager();        FragmentTransaction ft= fm.beginTransaction();        displayMetrics displayMetrics = new displayMetrics();        getwindowManager().getDefaultdisplay().getMetrics(displayMetrics);        int height = displayMetrics.heightPixels;        int wIDth = displayMetrics.wIDthPixels;        if (wIDth > height)        {            Fragment1 f1 = new Fragment1();            ft.replace(androID.R.ID.content, f1);        }        else        {            Fragment2 f2 = new Fragment2();            ft.replace(androID.R.ID.content, f2);        }        ft.commit();    }}
总结

以上是内存溢出为你收集整理的android – 我应该使用什么代替getWidth()和getHeight()来知道宽度何时更大以及何时高度更大全部内容,希望文章能够帮你解决android – 我应该使用什么代替getWidth()和getHeight()来知道宽度何时更大以及何时高度更大所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1116481.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存