关键词:
概述
关于选项菜单,请参考阅读《Android 从入门到精通》(27)——选项菜单,不再赘述
程序示例
完整工程:http://download.csdn.net/detail/sweetloveft/9439976
1.MainActivity.java
package com.sweetlover.activity;
import com.sweetlover.optionmenu.R;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.widget.Toast;
public class MainActivity extends Activity
@Override
protected void onCreate(Bundle savedInstanceState)
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
@Override
public boolean onCreateOptionsMenu(Menu menu)
// TODO Auto-generated method stub
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.root, menu);
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 R.id.delete:
Toast.makeText(MainActivity.this, "删除菜单被点击了!", Toast.LENGTH_SHORT)
.show();
break;
case R.id.save:
Toast.makeText(MainActivity.this, "保存菜单被点击了!", Toast.LENGTH_SHORT)
.show();
break;
case R.id.help:
Toast.makeText(MainActivity.this, "帮助菜单被点击了!", Toast.LENGTH_SHORT)
.show();
break;
case R.id.add:
Toast.makeText(MainActivity.this, "添加菜单被点击了!", Toast.LENGTH_SHORT)
.show();
break;
case R.id.detail:
Toast.makeText(MainActivity.this, "详细菜单被点击了!", Toast.LENGTH_SHORT)
.show();
break;
case R.id.send:
Toast.makeText(MainActivity.this, "发送菜单被点击了!", Toast.LENGTH_SHORT)
.show();
break;
return super.onOptionsItemSelected(item);
@Override
public void onOptionsMenuClosed(Menu menu)
// TODO Auto-generated method stub
super.onOptionsMenuClosed(menu);
Toast.makeText(MainActivity.this, "选项菜单关闭了!", Toast.LENGTH_SHORT)
.show();
2.activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="30dp" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="10dp"
android:textSize="20sp"
android:text="@string/tittle" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="10dp"
android:textSize="20sp"
android:text="@string/note" />
</LinearLayout>
3.string.xml
<resources>
<string name="app_name">OptionMenu</string>
<string name="tittle">Option Menu Application</string>
<string name="note">单击 Menu 键</string>
<string name="oper1">删除</string>
<string name="oper2">保存</string>
<string name="oper3">帮助</string>
<string name="oper4">添加</string>
<string name="oper5">详细</string>
<string name="oper6">发送</string>
</resources>
4.res/menu/root.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<group
android:id="@+id/group1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<item
android:id="@+id/delete"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:icon="@drawable/miku"
android:orderInCategory="1"
android:title="@string/oper1">
</item>
<item
android:id="@+id/save"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:icon="@drawable/miku"
android:orderInCategory="2"
android:title="@string/oper2">
</item>
<item
android:id="@+id/help"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:icon="@drawable/miku"
android:orderInCategory="3"
android:title="@string/oper3">
</item>
<item
android:id="@+id/add"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:icon="@drawable/miku"
android:orderInCategory="4"
android:title="@string/oper4">
</item>
<item
android:id="@+id/detail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:icon="@drawable/miku"
android:orderInCategory="5"
android:title="@string/oper5">
</item>
<item
android:id="@+id/send"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:icon="@drawable/miku"
android:orderInCategory="6"
android:title="@string/oper6">
</item>
</group>
</menu>
阅读《android从入门到精通》(29)——四大布局
LinearLayout类方法RelativeLayout类方法TableLayout类方法AbsoluteLayout类方法 查看详情
阅读《android从入门到精通》(29)——四大布局
LinearLayout类方法RelativeLayout类方法TableLayout类方法AbsoluteLayout类方法 查看详情
阅读《android从入门到精通》(27)——选项菜单(代码片段)
选项菜单(OptionMenu)使用Menu按键触发的菜单叫做选项菜单android.R.drawable属性OptionMenu示例完整工程:http://download.csdn.net/detail/sweetloveft/9436986本程序主要学习OptionMenu的使用,需要关注的是MainActivity.java里面的on 查看详情
阅读《android从入门到精通》(27)——选项菜单(代码片段)
选项菜单(OptionMenu)使用Menu按键触发的菜单叫做选项菜单android.R.drawable属性OptionMenu示例完整工程:http://download.csdn.net/detail/sweetloveft/9436986本程序主要学习OptionMenu的使用,需要关注的是MainActivity.java里面的on 查看详情
阅读《android从入门到精通》(25)——标签切换(代码片段)
标签切换(Tab)java.lang.Object;android.view.View;android.widget.ViewGroup;android.widget.FrameLayout;Tab示例完整工程:http://download.csdn.net/detail/sweetloveft/9431225使用的AndroidManifest.xml 查看详情
阅读《android从入门到精通》(23)——列表视图(代码片段)
列表视图(ListView)android.widget.ViewGroup;android.widget.AdapterView;android.widget.ListView;继承于AdapterView类,通常需要和列表适配器ListAdapter配合起来使用ListView类方法ListView示例完整工程:http://downlo 查看详情
阅读《android从入门到精通》(22)——网格视图(代码片段)
网格视图(GridView)继承于AdapterView类,通常需要和列表适配器ListAdapter配合使用GridView类方法GridView示例完整工程:http://download.csdn.net/detail/sweetloveft/9426612下述工程主要学习GridView的用法,GridView的运用包含 查看详情
阅读《android从入门到精通》(21)——滚动视图(代码片段)
滚动视图(ScrollView)java.lang.Object;android.view.View;android.widget.ViewGroup;android.widget.FrameLayout;android.widget.ScrollView;注意,这里的ScrollView只支持垂直滚动条。ScrollView类方法ScrollView示例 查看详情
阅读《android从入门到精通》(19)——评分条(代码片段)
评分条(RatingBar)java.lang.Object;android.view.View;android.widget.ProgressBar;android.widget.AbsSeekBar;android.widget.RatingBar;RatingBar类方法RatingBar示例完整工程:http://download.csdn.net 查看详情
阅读《android从入门到精通》(15)——数字时钟(代码片段)
数字时钟(DigitalClock)java.lang.Object;android.view.View;android.widget.TextView;android.widget.DigitalClock;DigitalClock类方法DigitalClock示例完整工程:http://download.csdn.net/detail/sweetlov 查看详情
阅读《android从入门到精通》(30)——字体(代码片段)
TypeFace类方法TypeFace的五种字型和四种字体TypeFace示例完整工程:http://download.csdn.net/detail/sweetloveft/94565311.MainActivity.javapackagecom.sweetlover.activity;importcom.sweetlover.typeface.R;importandroid.ap 查看详情
阅读《android从入门到精通》(18)——拖动条(代码片段)
拖动条(SeekBar)android.widget.ProgressBar;android.widget.AbsSeekBar;android.widget.SeekBar;SeekBar类方法SeekBar示例完整工程:http://download.csdn.net/detail/sweetloveft/9419276下面演示了SeekBar调节音量 查看详情
阅读《android从入门到精通》(31)——intent(代码片段)
意图(Intent)java.lang.Object;android.content.intend;android.content.pm.LabeledIntent;主要分为ActionIntent 和BroadcastIntent,Intent服务于Android三大核心组件:Activity、Services、BroadcastRecei 查看详情
阅读《android从入门到精通》(12)——自动完成文本框(代码片段)
自动完成文本框(AutoCompleteTextView)java.lang.Object;android.view.View;android.view.TextView;android.widget.EditText;android.widget.AutoCompleteTextView;MultiAutoCompleteTextView;AutoCompleteTe 查看详情
阅读《android从入门到精通》(36)——notification通知(代码片段)
Notification属性Android系统服务分类核心代码完整实例:http://download.csdn.net/detail/sweetloveft/94825081.获取NotificationManagerNotificationManagernm=(NotificationManager)getSystemService(NOTIFICATION_SERVIC 查看详情
阅读《android从入门到精通》(36)——notification通知(代码片段)
Notification属性Android系统服务分类核心代码完整实例:http://download.csdn.net/detail/sweetloveft/94825081.获取NotificationManagerNotificationManagernm=(NotificationManager)getSystemService(NOTIFICATION_SERVIC 查看详情
阅读《android从入门到精通》(13)——日期选择器(代码片段)
日期选择器(DatePicker)java.lang.Object;android.view.View;android.view.ViewGroup;android.widget.FrameLayout;android.widget.DataPicker;DatePicker类方法DatePicker示例完整工程:http://download.csdn. 查看详情
阅读《android从入门到精通》(35)——后台服务
服务分为本地服务(程序内部的耗时操作,比如:下载线程),远程服务(内部应用程序相互调用),类似于Linux中的守护进程java.lang.Object;android.content.Context;android.content.ContextWrapper;android.app.S 查看详情