Manifest File.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.ravish.glassmenu"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="19"
android:targetSdkVersion="19" />
<uses-permission android:name="com.google.android.glass.permission.DEVELOPMENT"/>
<application
android:allowBackup="true"
android:icon="@drawable/app_icon"
android:label="@string/app_name" >
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="com.google.android.glass.action.VOICE_TRIGGER" />
</intent-filter>
<meta-data
android:name="com.google.android.glass.VoiceTrigger"
android:resource="@xml/voice_trigger_start" />
</activity>
<activity
android:name="AboutActivity"
android:label="@string/app_name" />
<activity
android:name="SettingsActivity"
android:label="@string/app_name" />
</application>
</manifest>
activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/msg_tap_to_menu"
android:layout_centerInParent="true"
android:textSize="35dp" />
</RelativeLayout>
activity_about.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="@string/msg_about"
android:textSize="35dp" />
</RelativeLayout>
menu/main.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/action_about"
android:icon="@drawable/ico_about"
android:title="@string/action_about"/>
<item
android:id="@+id/action_settings"
android:icon="@drawable/ico_settings"
android:title="@string/action_settings"/>
<item
android:id="@+id/action_quit"
android:icon="@drawable/ico_quit"
android:title="@string/action_quit"/>
</menu>
strings.xml
<resources>
<string name="app_name">Glass First</string>
<!-- App start voice command -->
<string name="start_command">first</string>
<!-- View messages -->
<string name="msg_tap_to_menu">Please tap to lauch "menu"</string>
<string name="msg_about">Activity for about</string>
<!-- Menu Items -->
<string name="action_about">About</string>
<string name="action_settings">Settings</string>
<string name="action_quit">Quit</string>
</resources>
MainActivity.java
package com.ravish.glassmenu;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.Menu;
import android.view.MenuItem;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
/**
* Opening menu on tapping on D-pad
* */
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_DPAD_CENTER) {
openOptionsMenu();
return true;
}
return false;
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
/**
* Taking appropriate action on selecting menu item
* */
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.action_about:
// About menu item selected
Intent ia = new Intent(MainActivity.this, AboutActivity.class);
startActivity(ia);
return true;
case R.id.action_quit:
// Quit menu item selected
// we'll simply close the app
finish();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
}
AboutActivity.java
package com.ravish.glassmenu;
import android.app.Activity;
import android.os.Bundle;
public class AboutActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_about);
}
}
