参见英文答案 > 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()来知道宽度何时更大以及何时高度更大所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)