New API demo showing different soft input modes.
Change-Id: I2aa53a093df0bd11d9bbe9eb866d2309f113d96d
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
package com.example.android.apis.app;
|
||||
|
||||
import com.example.android.apis.R;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.app.admin.DevicePolicyManager;
|
||||
import android.content.SharedPreferences;
|
||||
import android.os.Bundle;
|
||||
import android.view.View;
|
||||
import android.view.WindowManager;
|
||||
import android.widget.AdapterView;
|
||||
import android.widget.ArrayAdapter;
|
||||
import android.widget.EditText;
|
||||
import android.widget.Spinner;
|
||||
import android.widget.TextView;
|
||||
import android.widget.AdapterView.OnItemSelectedListener;
|
||||
|
||||
/**
|
||||
* Demonstrates how the various soft input modes impact window resizing.
|
||||
*/
|
||||
public class SoftInputModes extends Activity {
|
||||
Spinner mResizeMode;
|
||||
final CharSequence[] mResizeModeLabels = new CharSequence[] {
|
||||
"Unspecified", "Resize", "Pan", "Nothing"
|
||||
};
|
||||
final int[] mResizeModeValues = new int[] {
|
||||
WindowManager.LayoutParams.SOFT_INPUT_ADJUST_UNSPECIFIED,
|
||||
WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE,
|
||||
WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN,
|
||||
WindowManager.LayoutParams.SOFT_INPUT_ADJUST_NOTHING,
|
||||
};
|
||||
|
||||
/**
|
||||
* Initialization of the Activity after it is first created. Here we use
|
||||
* {@link android.app.Activity#setContentView setContentView()} to set up
|
||||
* the Activity's content, and retrieve the EditText widget whose state we
|
||||
* will persistent.
|
||||
*/
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
// Be sure to call the super class.
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
// See assets/res/any/layout/save_restore_state.xml for this
|
||||
// view layout definition, which is being set here as
|
||||
// the content of our screen.
|
||||
setContentView(R.layout.soft_input_modes);
|
||||
|
||||
mResizeMode = (Spinner)findViewById(R.id.resize_mode);
|
||||
ArrayAdapter<CharSequence> adapter = new ArrayAdapter<CharSequence>(this,
|
||||
android.R.layout.simple_spinner_item, mResizeModeLabels);
|
||||
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
|
||||
mResizeMode.setAdapter(adapter);
|
||||
mResizeMode.setSelection(0);
|
||||
mResizeMode.setOnItemSelectedListener(
|
||||
new OnItemSelectedListener() {
|
||||
public void onItemSelected(
|
||||
AdapterView<?> parent, View view, int position, long id) {
|
||||
getWindow().setSoftInputMode(mResizeModeValues[position]);
|
||||
}
|
||||
|
||||
public void onNothingSelected(AdapterView<?> parent) {
|
||||
getWindow().setSoftInputMode(mResizeModeValues[0]);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user