首页 > 代码库 > App/Activity/Screen Orientation
App/Activity/Screen Orientation
测试android屏幕方向的小Demo
1、首先我们在values下面新建文件arrays.xml(用来在下拉列表中显示)
<?xml version="1.0" encoding="utf-8"?><resources> <!-- Used in app/Screen Orientation --> <string-array name="screen_orientations" <item>UNSPECIFIED</item> <item>LANDSCAPE</item> <item>PORTRAIT</item> <item>USER</item> <item>BEHIND</item> <item>SENSOR</item> <item>NOSENSOR</item> <item>SENSOR_LANDSCAPE</item> <item>SENSOR_PORTRAIT</item> <item>REVERSE_LANDSCAPE</item> <item>REVERSE_PORTRAIT</item> <item>FULL_SENSOR</item> </string-array></resources>
2、我们在代码中定义相对应数组
final static int mOrientationValues[] = new int[] { ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED, ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE, ActivityInfo.SCREEN_ORIENTATION_PORTRAIT, ActivityInfo.SCREEN_ORIENTATION_USER, ActivityInfo.SCREEN_ORIENTATION_BEHIND, ActivityInfo.SCREEN_ORIENTATION_SENSOR, ActivityInfo.SCREEN_ORIENTATION_NOSENSOR, ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE, ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT, ActivityInfo.SCREEN_ORIENTATION_REVERSE_LANDSCAPE, ActivityInfo.SCREEN_ORIENTATION_REVERSE_PORTRAIT, ActivityInfo.SCREEN_ORIENTATION_FULL_SENSOR, };
3、处理用户选择
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.app_activity_screen_orientation); mOrientation = (Spinner)findViewById(R.id.app_activity_screen_orientation); ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource( this, R.array.screen_orientations, android.R.layout.simple_spinner_item); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); mOrientation.setAdapter(adapter); mOrientation.setOnItemSelectedListener( new OnItemSelectedListener() { public void onItemSelected( AdapterView<?> parent, View view, int position, long id) { setRequestedOrientation(mOrientationValues[position]); } public void onNothingSelected(AdapterView<?> parent) { setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED); } }); }
App/Activity/Screen Orientation
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。