Google glass GDK

我们来讲Google glass GDK开发中的菜单吧。(上一节讲得真JB烂 = = 这一节在以后的我看来也是,所以就草草写一点 然后等技术成熟了,再出一套完整的教程!)

先来看效果图


开始 :)

我们先把原来的主题去掉,其他的不管

AndroidManifest.xml中把android:theme去掉,然后在res/menu/main.xml中编辑我们的菜单

Glass的菜单有三个选项(一般来说),一个是ID,一个是标题,还有一个是ICON图标(白色透明背景50x50像素)

所以我们的xml代码如下:

 1 <menu xmlns:android="http://schemas.android.com/apk/res/android"
 2     xmlns:tools="http://schemas.android.com/tools"
 3     tools:context="com.google.menutest.MainActivity" >
 4 
 5     <item
 6         android:id="@+id/action_play"
 7         android:title="播放"
 8         android:icon="@drawable/ic_music_play_50"
 9         />
10     <item
11         android:id="@+id/action_pause"
12         android:title="暂停"
13         android:icon="@drawable/ic_music_pause_50"
14         />
15     <item
16         android:id="@+id/action_quit"
17         android:title="退出"
18         />
19 </menu>

OK,然后我们在java中编写菜单的点击事件

 1     @Override
 2     public boolean onOptionsItemSelected(MenuItem item) {
 3         switch(item.getItemId()){
 4         case R.id.action_quit:
 5             System.out.println("退出程序!");
 6             System.exit(0);
 7             break;
 8         case R.id.action_play:
 9             System.out.println("开始播放!");
10             break;
11         case R.id.action_pause:
12             System.out.println("暂停播放!");
13         default:
14             break;
15         }
16         return super.onOptionsItemSelected(item);
17     }

很好理解吧?和Android没多大区别,不过接下来就是最重要的事件-触控板点击事件

在触控板点击的时候弹出菜单,我们添加一个onKeyDown事件,需要(int keyCode, KeyEvent keyEvent)两个参数

1     public boolean onKeyDown(int keyCode, KeyEvent keyEvent){
2         if(keyCode == KeyEvent.KEYCODE_DPAD_CENTER){
3             openOptionsMenu();
4             return true;
5         }
6         return false;
7     }

KeyEvent.KEYCODE_DPAD_CENTER是触控板点击事件ID,向右向左向下什么的暂时还没弄清,所以日后再讲~


基本就OK了,我们还是写一下开始代码吧

 1     @Override
 2     protected void onCreate(Bundle savedInstanceState) {
 3         super.onCreate(savedInstanceState);
 4         //setContentView(R.layout.activity_main);
 5         Card card1 = new Card(this);
 6         card1.setImageLayout(Card.ImageLayout.FULL);
 7         card1.addImage(R.drawable.img2);
 8         card1.setText("草泥马播放器");
 9         card1.setFootnote("Ch3rry");
10         View view = card1.getView();
11         setContentView(view);
12     }
原文地址:https://www.cnblogs.com/ch3rry/p/3853031.html