|
출처: 선문비트프로젝트 원문보기 글쓴이: 21기 정연규
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:id="@+id/TextView01" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Test Menu" android:gravity="center" android:layout_gravity="center" /> </LinearLayout> |
Android_ContextMenu_8.java
package com.android_Android_ContextMenu_8;
import com.android_Android_ContextMenu_8.R; import android.app.Activity; import android.graphics.Color; import android.graphics.Typeface; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.SubMenu; import android.widget.TextView;
public class Android_ContextMenu_8Activity extends Activity { /** Called when the activity is first created. */ public static final int ID_GROUP_TEXT_COLOR = 1; public static final int ID_GROUP_TEXT_STYLE = 2; public static final int ID_GROUP_TEXT_SIZE = 3; public static final int ID_GROUP_ARTIST = 4; public static final int ID_GROUP_ALBUM = 5; public static final int ID_GROUP_SONG = 6; public static final int ID_GROUP_MOVIE = 7;
public static final int ID_COLOR_RED = 11; public static final int ID_COLOR_GREEN = 12; public static final int ID_COLOR_BLUE = 13;
public static final int ID_TEXT_NORMAL = 21; public static final int ID_TEXT_BOLD = 22; public static final int ID_TEXT_ITALIC = 23;
public static final int ID_TEXTSIZE_10P = 31; public static final int ID_TEXTSIZE_18P = 32; public static final int ID_TEXTSIZE_24P = 33;
TextView objTV;
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main);
objTV = (TextView)findViewById(R.id.TextView01);
// Context menu 제공 registerForContextMenu(objTV); }
@Override public boolean onCreateOptionsMenu(Menu menu) { // TODO Auto-generated method stub SubMenu mnuTextColor = menu.addSubMenu("Text Color"); mnuTextColor.add(ID_GROUP_TEXT_COLOR, ID_COLOR_RED, 1, "Red"); mnuTextColor.add(ID_GROUP_TEXT_COLOR, ID_COLOR_GREEN, 2, "Green"); mnuTextColor.add(ID_GROUP_TEXT_COLOR, ID_COLOR_BLUE, 3, "Blue");
SubMenu mnuTextStyle = menu.addSubMenu("Text Style"); mnuTextStyle.add(ID_GROUP_TEXT_STYLE, ID_TEXT_NORMAL, 1, "Normal") .setChecked(true); mnuTextStyle.add(ID_GROUP_TEXT_STYLE, ID_TEXT_BOLD, 2, "Bold"); mnuTextStyle.add(ID_GROUP_TEXT_STYLE, ID_TEXT_ITALIC, 3, "Italic"); mnuTextStyle.setGroupCheckable(ID_GROUP_TEXT_STYLE, true, true);
SubMenu mnuTextSize = menu.addSubMenu("Text Size"); mnuTextSize.add(ID_GROUP_TEXT_SIZE, ID_TEXTSIZE_10P, 1, "10 Pt"); mnuTextSize.add(ID_GROUP_TEXT_SIZE, ID_TEXTSIZE_18P, 2, "18 Pt"); mnuTextSize.add(ID_GROUP_TEXT_SIZE, ID_TEXTSIZE_24P, 3, "24 Pt");
SubMenu mnuArtist = menu.addSubMenu("Artist"); SubMenu mnuAlbum = menu.addSubMenu("Album"); SubMenu mnuSong = menu.addSubMenu("Song"); SubMenu mnuMovie = menu.addSubMenu("Movie"); return super.onCreateOptionsMenu(menu); }
@Override public boolean onPrepareOptionsMenu(Menu menu) { // TODO Auto-generated method stub return super.onPrepareOptionsMenu(menu); } @Override public boolean onOptionsItemSelected(MenuItem item) { // TODO Auto-generated method stub switch(item.getItemId()) { case ID_COLOR_RED: objTV.setTextColor(Color.RED); return true; case ID_COLOR_GREEN: objTV.setTextColor(Color.GREEN); return true; case ID_COLOR_BLUE: objTV.setTextColor(Color.BLUE); return true; case ID_TEXT_NORMAL: objTV.setTypeface(Typeface.DEFAULT, Typeface.NORMAL); item.setChecked(true); return true; case ID_TEXT_BOLD: objTV.setTypeface(Typeface.DEFAULT, Typeface.BOLD); return true; case ID_TEXT_ITALIC: objTV.setTypeface(Typeface.DEFAULT, Typeface.ITALIC); return true; case ID_TEXTSIZE_10P: objTV.setTextSize(10); return true; case ID_TEXTSIZE_18P: objTV.setTextSize(18); return true; case ID_TEXTSIZE_24P: objTV.setTextSize(24); return true; } return super.onOptionsItemSelected(item); } } |