am 8bcb38f3: Merge "New API demo showing different screen orientation options." into gingerbread

Merge commit '8bcb38f3d49d0fdefd51546ada4232203fc606cf' into gingerbread-plus-aosp

* commit '8bcb38f3d49d0fdefd51546ada4232203fc606cf':
  New API demo showing different screen orientation options.
This commit is contained in:
Dianne Hackborn
2010-10-04 14:58:44 -07:00
committed by Android Git Automerger
5 changed files with 140 additions and 0 deletions

View File

@@ -207,6 +207,14 @@
</intent-filter>
</activity>
<activity android:name=".app.ScreenOrientation"
android:label="@string/activity_screen_orientation">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.SAMPLE_CODE" />
</intent-filter>
</activity>
<!-- Intent Samples -->
<activity android:name=".app.Intents" android:label="@string/activity_intents">

View File

@@ -0,0 +1,37 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2010 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!-- Demonstrates implementation of a DeviceAdmin. -->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:padding="4dip"
android:gravity="center_horizontal"
android:layout_width="match_parent" android:layout_height="match_parent">
<TextView
android:layout_width="match_parent" android:layout_height="wrap_content"
android:layout_weight="0"
android:paddingBottom="4dip"
android:text="@string/screen_orientation_summary"/>
<Spinner android:id="@+id/orientation"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawSelectorOnTop="true"
android:prompt="@string/screen_orientation">
</Spinner>
</LinearLayout>

View File

@@ -94,6 +94,22 @@
<item>Alphanumeric</item>
</string-array>
<!-- 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>
<!-- Used in view/Secure View examples -->
<string-array name="secure_view_clicked">
<item>*bzzt*\nTransferred $1,000,000 to J. Phisher. Thank you!</item>

View File

@@ -44,6 +44,12 @@
<string name="set_wallpaper">Set Wallpaper</string>
<string name="randomize">Randomize</string>
<string name="activity_screen_orientation">App/Activity/Screen Orientation</string>
<string name="screen_orientation_summary">Demonstrates the available screen
orientation modes. Often you want to set the desired mode in your manifest
instead of programmatically.</string>
<string name="screen_orientation">Screen Orientation</string>
<string name="activity_translucent">App/Activity/Translucent</string>
<string name="translucent_background">Example of how you can make an
activity have a translucent background, compositing over

View File

@@ -0,0 +1,73 @@
/*
* Copyright (C) 2010 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.example.android.apis.app;
import com.example.android.apis.R;
import android.app.Activity;
import android.app.admin.DevicePolicyManager;
import android.content.pm.ActivityInfo;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.AdapterView.OnItemSelectedListener;
public class ScreenOrientation extends Activity {
Spinner mOrientation;
// Orientation spinner choices
// This list must match the list found in samples/ApiDemos/res/values/arrays.xml
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,
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.screen_orientation);
mOrientation = (Spinner)findViewById(R.id.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);
}
});
}
}