为了可以将应用程序图标转变成可点击的图片,可以调用ActionBar
运行效果图:
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:title="@string/font_size"
android:icon="@drawable/font"
android:showAsAction="always|withText">
<menu>
<group android:checkableBehavior="single">
<item android:id="@+id/font1"
android:title="@string/font1"/>
<item android:id="@+id/font2"
android:title="@string/font2"/>
<item android:id="@+id/font3"
android:title="@string/font3"/>
</group>
</menu>
</item>
<item android:title="@string/menu1"
android:icon="@drawable/tools"
android:showAsAction="always"/>
<item android:title="@string/sColor"
android:icon="@drawable/color"
android:showAsAction="always|withText">
<menu>
<group>
<item android:id="@+id/green"
android:title="@string/sGreen"/>
<item android:id="@+id/red"
android:title="@string/sRed"/>
<item android:id="@+id/blue"
android:title="@string/sBlue"/>
</group>
</menu>
</item>
</menu>
content.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<group android:checkableBehavior="single">
<item android:id="@+id/red"
android:title="@string/sRed"
android:alphabeticShortcut="r"/>
<item android:id="@+id/green"
android:title="@string/sGreen"
android:alphabeticShortcut="g"/>
<item android:id="@+id/blue"
android:title="@string/sBlue"
android:alphabeticShortcut="b"/>
</group>
</menu>
MainActivity.java
package com.lxm.menurestest;
import android.os.Bundle;
import android.app.Activity;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.widget.TextView;
public class MainActivity extends Activity {
TextView tv ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv = (TextView) findViewById(R.id.tv);
registerForContextMenu(tv);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.my_menu, menu);
return true;
}
@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
MenuInflater menuInflater = new MenuInflater(MainActivity.this);
menuInflater.inflate(R.menu.content, menu);
super.onCreateContextMenu(menu, v, menuInfo);
}
@Override
public boolean onContextItemSelected(MenuItem item) {
// TODO Auto-generated method stub
return super.onContextItemSelected(item);
}
}
string.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">MenuResTest</string>
<string name="action_settings">Settings</string>
<string name="hello_world">Hello world!</string>
<string name="font_size">字體大小</string>
<string name="font1">字體1</string>
<string name="font2">字體2</string>
<string name="font3">字體3</string>
<string name="menu1">普通菜單</string>
<string name="sColor">顏色</string>
<string name="sGreen">綠色</string>
<string name="sRed">紅色</string>
<string name="sBlue">藍色</string>
</resources>