本章節(jié)翻譯自《Beginning-Android-4-Application-Development》,如有翻譯不當(dāng)?shù)牡胤?,敬請指出?
原書購買地址 http://www.amazon.com/Beginning-Android-4-Application-Development/dp/1118199545/
現(xiàn)在,我們就可以去修改上一節(jié)中的項(xiàng)目了。這樣,在用戶按menu鍵的時(shí)候就會彈出選項(xiàng)菜單了。
1. 使用上一節(jié)中的工程,在MenusActivity.java中添加一些代碼。
public class MenusActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button btn = (Button) findViewById(R.id.button1); btn.setOnCreateContextMenuListener(this); } @Override public void onCreateContextMenu(ContextMenu menu, View view, ContextMenuInfo menuInfo) { super.onCreateContextMenu(menu, view, menuInfo); CreateMenu(menu); } @Override public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); CreateMenu(menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { return MenuChoice(item); } private void CreateMenu(Menu menu) { ...... } private boolean MenuChoice(MenuItem item) { ...... } }2. 按F11在模擬器上面進(jìn)行測試。下面展示彈出的選項(xiàng)菜單。選擇一個(gè)菜單項(xiàng)或者使用快捷鍵(A到D)。注意一點(diǎn),1到3的菜單項(xiàng)并沒有顯示出圖標(biāo),盡管我們在代碼中設(shè)置了圖標(biāo)。
3. 如果在AndroidManifest.xml中設(shè)置最小的SDK屬性為10(包括10)以下,然后重新加載程序,就會看見圖標(biāo)了。如果菜單項(xiàng)過多的話,就會顯示一個(gè)More的選項(xiàng)。
<uses-sdk android:minSdkVersion="10" />

想要在Activity中顯示出選項(xiàng)菜單,那么就需要實(shí)現(xiàn)兩個(gè)方法:onCreateOptionsMenu()和onOptionsItemSelected()。前者在MENU鍵被點(diǎn)擊的時(shí)候被觸發(fā),后者在一個(gè)菜單項(xiàng)被點(diǎn)擊的時(shí)候被觸發(fā)。
注意選項(xiàng)菜單在不同android版本中的樣式。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
