真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯網站制作重慶分公司

Android如何實現選項菜單子菜單

這篇文章主要為大家展示了Android如何實現選項菜單子菜單,內容簡而易懂,希望大家可以學習一下,學習完之后肯定會有收獲的,下面讓小編帶大家一起來看看吧。

我們提供的服務有:成都網站制作、成都網站設計、外貿營銷網站建設、微信公眾號開發(fā)、網站優(yōu)化、網站認證、中站ssl等。為超過千家企事業(yè)單位解決了網站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的中站網站制作公司

菜單簡介:

菜單在桌面應用中使用十分廣泛,幾乎所有的桌面應用都有菜單。但是隨著手機的發(fā)展,對于手機桌面菜單的使用減少了很多,一般來說我們把菜單都放到應用中是實現,桌面應用的菜單與手機應用的菜單的不同之處就是,桌面菜單一般可見,而手機不可見,通常需要用戶按下手機上的MENU鍵時,才會彈出菜單的相關應用,這里簡單的來說下菜的簡單使用情況,通過一個小案例來講解。

一般菜單的創(chuàng)建有兩種方式,一種是在Java代碼中創(chuàng)建,一種是在XML中創(chuàng)建,本次主要講解XML中創(chuàng)建菜單的案例,因為一般推薦使用的都是XML方式來創(chuàng)建菜單,相比Java代碼,他更便于維護,可擴展性強,耦合度底。

案例實現,用戶輸入文字,可以通過菜單選擇字體的大小,字體的顏色等

實現步驟:

1.首先在資源文件夾的menu下創(chuàng)建菜單xml

menu_main.xml

<?xml version="1.0" encoding="utf-8"?>

 
 
  
  
  
  
  
  
  
 
 

 
 
  
  
  
  
  
 
 

對于上面的xml文件中:

‘<'item …/>元素:定義菜單項。
‘<'group…/>子元素:將多個'<'item…/>定義的菜單項包裝成一個菜單組,'<'gruop…/>
子元素用于控制整組菜單的行為,該元素可指定如下的常用屬性:

  • checkableBehavior:指定該組菜單的選擇行為。可以指定為none(不可選)、 
  • all(多選)和single(單選)三個值
  • menuCategory:對菜單進行分類,指定菜單的優(yōu)先級。有效值為container、 
  • system、secondary和alternative
  • visible:指定該組件菜單是否可見。
  • enable:指定該組菜單是否可用。

一般'<'item .../>元素用于定義菜單項,'<'item .../>元素又可包含'<'menu.../>元素,位
于'<'item.../>元素內部的'<'menu.../>就是他的子菜單。 

對于'<'item…/>元素可用指定如下常用屬性:

android:id: 為菜單項指定一個唯一的標識 
android:title: 指定菜單項的標題
android:icon: 指定菜單項的圖標
android:alphabeticShortcut: 為菜單項指定字符快捷鍵 
android:numericShortcut: 為菜單項指定數字快捷鍵 
android:checkable: 設置該次啊單項是否可選 
android:checked: 設置該菜單項是否已選中 
android:visible: 設置該菜單項是否可見 
android:enable: 設置該菜單項是否可用

2.設置與菜單項關聯的Activity,在activity中重寫onCreateOptionsMenu(Menu menu)、
如果需要菜單項的監(jiān)聽事件,則需要重寫

onOptionsItemSelected(MenuItem item)

MainActivity.java

public class MainActivity extends AppCompatActivity {

private EditText mEdt;
private TextView mTv;


@Override
protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
 mEdt = (EditText) findViewById(R.id.mEdt);
 mTv = (TextView) findViewById(R.id.mInput);
}

/**
 * 通過該方法添加菜單項或子菜單項
 * @param menu
 * @return
 */
@Override
public boolean onCreateOptionsMenu(Menu menu) {
 //方式一添加菜單布局
 MenuInflater inflater = new MenuInflater(this);
 //將解析到的布局添加到menu中
 inflater.inflate(R.menu.menu_main, menu);
 //方式二添加菜單布局
// getMenuInflater().inflate(R.menu.menu_main,menu);
 return super.onCreateOptionsMenu(menu);
}

/**
 * 設置菜單項的點擊事件
 * @param item
 * @return
 */
@Override
public boolean onOptionsItemSelected(MenuItem item) {

 switch (item.getItemId()) {
 case R.id.menuColor:
  Toast.makeText(this, "你選擇了修改顏色", Toast.LENGTH_SHORT).show();
  break;
 case R.id.menuFont:
  Toast.makeText(this, "你選擇了修改字體", Toast.LENGTH_SHORT).show();
  break;
 }
 return super.onOptionsItemSelected(item);
 }
}

基本的布局就是這樣了,看看整體布局

Android如何實現選項菜單子菜單

字體大小下的子菜單:

Android如何實現選項菜單子菜單

字體顏色下的子菜單:

Android如何實現選項菜單子菜單

3.開始實現功能了,這里我只貼上功能實現的方法:onOptionsItemSelected(MenuItem item)

@Override
public boolean onOptionsItemSelected(MenuItem item) {
 //先判斷點擊的是哪個id
 switch (item.getItemId()) {
 case R.id.font_10:
  mEdt.setTextSize(10 * 2);
  break;
 case R.id.font_12:
  mEdt.setTextSize(12 * 2);
  break;
 case R.id.font_14:
  mEdt.setTextSize(14 * 2);
  break;
 case R.id.font_16:
  mEdt.setTextSize(16 * 2);
  break;
 case R.id.font_18:
  mEdt.setTextSize(18 * 2);
  break;
 case R.id.blue:
  mEdt.setTextColor(Color.BLUE);
  break;
 case R.id.red:
  mEdt.setTextColor(Color.RED);
  break;
 case R.id.green:
  mEdt.setTextColor(Color.GREEN);
  break;
 }
 return super.onOptionsItemSelected(item);
}

運行結果:

Android如何實現選項菜單子菜單

以上就是關于Android如何實現選項菜單子菜單的內容,如果你們有學習到知識或者技能,可以把它分享出去讓更多的人看到。


文章標題:Android如何實現選項菜單子菜單
網址分享:http://weahome.cn/article/gsheie.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部