152d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project/* 252d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * Copyright (C) 2007 The Android Open Source Project 352d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * 452d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 552d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * you may not use this file except in compliance with the License. 652d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * You may obtain a copy of the License at 752d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * 852d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 952d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * 1052d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * Unless required by applicable law or agreed to in writing, software 1152d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 1252d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1352d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * See the License for the specific language governing permissions and 1452d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * limitations under the License. 1552d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project */ 1652d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 1752d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Projectpackage com.example.android.apis.view; 1852d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 1952d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project//Need the following import to get access to the app resources, since this 2052d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project//class is in a sub-package. 2152d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Projectimport com.example.android.apis.R; 2252d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 2352d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Projectimport android.app.Activity; 2452d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Projectimport android.os.Bundle; 2552d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Projectimport android.view.Menu; 2652d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Projectimport android.view.Gravity; 2752d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Projectimport android.view.MenuItem; 2852d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Projectimport android.widget.LinearLayout; 2952d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 3052d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 3152d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project/** 3252d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * Demonstrates horizontal and vertical gravity 3352d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project */ 3452d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Projectpublic class LinearLayout8 extends Activity { 3552d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 3652d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project private LinearLayout mLinearLayout; 3752d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 3852d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project // Menu item Ids 3952d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project public static final int VERTICAL_ID = Menu.FIRST; 4052d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project public static final int HORIZONTAL_ID = Menu.FIRST + 1; 4152d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 4252d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project public static final int TOP_ID = Menu.FIRST + 2; 4352d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project public static final int MIDDLE_ID = Menu.FIRST + 3; 4452d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project public static final int BOTTOM_ID = Menu.FIRST + 4; 4552d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 4652d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project public static final int LEFT_ID = Menu.FIRST + 5; 4752d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project public static final int CENTER_ID = Menu.FIRST + 6; 4852d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project public static final int RIGHT_ID = Menu.FIRST + 7; 4952d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 5052d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project @Override 5152d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project protected void onCreate(Bundle savedInstanceState) { 5252d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project super.onCreate(savedInstanceState); 5352d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project setContentView(R.layout.linear_layout_8); 5452d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project mLinearLayout = (LinearLayout)findViewById(R.id.layout); 5552d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project } 5652d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 5752d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project @Override 5852d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project public boolean onCreateOptionsMenu(Menu menu) { 5952d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project super.onCreateOptionsMenu(menu); 6052d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project menu.add(0, VERTICAL_ID, 0, R.string.linear_layout_8_vertical); 6152d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project menu.add(0, HORIZONTAL_ID, 0, R.string.linear_layout_8_horizontal); 6252d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project menu.add(0, TOP_ID, 0, R.string.linear_layout_8_top); 6352d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project menu.add(0, MIDDLE_ID, 0, R.string.linear_layout_8_middle); 6452d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project menu.add(0, BOTTOM_ID, 0, R.string.linear_layout_8_bottom); 6552d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project menu.add(0, LEFT_ID, 0, R.string.linear_layout_8_left); 6652d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project menu.add(0, CENTER_ID, 0, R.string.linear_layout_8_center); 6752d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project menu.add(0, RIGHT_ID, 0, R.string.linear_layout_8_right); 6852d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 6952d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project return true; 7052d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project } 7152d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 7252d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project @Override 7352d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project public boolean onOptionsItemSelected(MenuItem item) { 7452d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project switch (item.getItemId()) { 7552d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 7652d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project case VERTICAL_ID: 7752d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project mLinearLayout.setOrientation(LinearLayout.VERTICAL); 7852d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project return true; 7952d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project case HORIZONTAL_ID: 8052d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project mLinearLayout.setOrientation(LinearLayout.HORIZONTAL); 8152d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project return true; 8252d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 8352d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project case TOP_ID: 8452d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project mLinearLayout.setVerticalGravity(Gravity.TOP); 8552d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project return true; 8652d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project case MIDDLE_ID: 8752d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project mLinearLayout.setVerticalGravity(Gravity.CENTER_VERTICAL); 8852d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project return true; 8952d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project case BOTTOM_ID: 9052d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project mLinearLayout.setVerticalGravity(Gravity.BOTTOM); 9152d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project return true; 9252d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 9352d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project case LEFT_ID: 9452d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project mLinearLayout.setHorizontalGravity(Gravity.LEFT); 9552d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project return true; 9652d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project case CENTER_ID: 9752d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project mLinearLayout.setHorizontalGravity(Gravity.CENTER_HORIZONTAL); 9852d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project return true; 9952d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project case RIGHT_ID: 10052d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project mLinearLayout.setHorizontalGravity(Gravity.RIGHT); 10152d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project return true; 10252d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 10352d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project } 10452d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project return super.onOptionsItemSelected(item); 10552d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project } 10652d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project} 107